网贴子内容防复制代码 复制时弹出提示
简介:游客复制贴子内容的时候,提示游客不能复制贴子内容,同时自动复制贴子地址信息,并询问是否注册会员,点击确定跳转到注册页面。会员复制贴子内容则提示版权信息和转贴要求,询问是否继续复制,如图。此代码只支持IE内核或兼容IE的浏览器,如果要支持火狐的话,添加代码过多,反而有点得不偿失。其他防复制代码一般贴子页面任何地方复制都会有这样的提示,此代码仅复制贴子内容才会有这样的提示,而且其他代码如果用世界之窗(或其他浏览器),设置了解除页面限制,就无效了,此代码即使世界之窗设置了解除限制,同样有效。修改方法:
1、打开 template/wind/read.htm (其他风格目录中有此文件,做相同修改),找到:
<!--<?php
在下面添加代码:
if($fid!=38){$nocopy= oncopy=\"nocopy()\";print <<<EOT
-->
<script language=\"JavaScript\">
function nocopy(){
<!--
EOT;
if($groupid==\"guest\")print <<<EOT
-->
event.returnValue=false;window.clipboardData.setData(Text,我在{$db_bbsname}({$db_bbsurl})看到了这篇帖子,认为很有价值,特推荐给大家,标题:{$subject},地址:+window.location.href+ 希望大家喜欢!);if(confirm(\"你还没有 注册 或 登录 {$db_bbsname},不能复制帖子内容,已经自动为你复制了帖子信息,你可以将帖子信息粘贴到任何论坛、博客等交互网页上或者通过QQ、MSN、电子邮件推荐给你的好友!是否立即免费注册为 {$db_bbsname} 会员?\")==true){location=\"{$regurl}\";}
<!--
EOT;
else print <<<EOT
-->
if(confirm(\"{$windid},你好,为保护本站原创,凡未经本站授权,擅自转载或采集本站内容,而且没有注明本站原始地址的,一律永封,并公告示众。复制本帖内容系统将自动记录你和本帖相关信息备查,你确定要复制选定内容吗?\")==false){event.returnValue=false;}
<!--
EOT;
print <<<EOT
-->
}
</script>
<!--
EOT;
}
继续找到
>$read
替换为
{$nocopy}>$read
2、打开 template/wind/simple_read.htm (其他风格目录中有此文件,做相同修改),找到:
<!--<?php
在下面添加代码:
if($fid!=38){$nocopy= oncopy=\"nocopy()\";$regurl=(substr($regurl,0,7)!=\"http://\"?$db_bbsurl./:).$regurl;print <<<EOT
-->
<script language=\"JavaScript\">
function nocopy(){
<!--
EOT;
if($groupid==\"guest\")print <<<EOT
-->
event.returnValue=false;window.clipboardData.setData(Text,我在{$db_bbsname}({$db_bbsurl})看到了这篇帖子,认为很有价值,特推荐给大家,标题:{$subject},地址:+window.location.href+ 希望大家喜欢!);if(confirm(\"你还没有 注册 或 登录 {$db_bbsname},不能复制帖子内容,已经自动为你复制了帖子信息,你可以将帖子信息粘贴到任何论坛、博客等交互网页上或者通过QQ、MSN、电子邮件推荐给你的好友!是否立即免费注册为 {$db_bbsname} 会员?\")==true){location=\"{$regurl}\";}
<!--
EOT;
else print <<<EOT
-->
if(confirm(\"{$windid},你好,为保护本站原创,凡未经本站授权,擅自转载或采集本站内容,而且没有注明本站原始地址的,一律永封,并公告示众。复制本帖内容系统将自动记录你和本帖相关信息备查,你确定要复制选定内容吗?\")==false){event.returnValue=false;}
<!--
EOT;
print <<<EOT
-->
}
</script>
<!--
EOT;
}
继续找到
class=\"tpc_content\"
替换为
class=\"tpc_content\"{$nocopy}
备注:“$fid!=38” 中的38是不防复制的版块ID,多个版块改为:“$fid!=38&&$fid!=39&&$fid!=40” ,如果只设置一个版块ID为38的版块防复制,则改为:“$fid==38” ,多个版块改为:“$fid==38||$fid==39||$fid==40” 。提示文字可以根据自己的适当修改。我这里并没有真正记录复制者相关信息,如果要真正记录相关信息,只需在“{event.returnValue=false;}” 中间加一句输出隐藏框架的语句,通过隐藏框架调用特定文件记录日志,如果论坛版本太旧,可能需要将“{$regurl}”改为“register.php”游客复制才能跳转到到注册页面。
页:
[1]