落拓居论坛 -> 网页技术 -> [原创]点击非本站链接弹出警告确认,确定后访问,取消则不访问 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

落拓居士 2008-03-11 09:36
当有人在论坛发出超级链接时,如果不是自己的网站,点击时就弹出警告,待确定后方可访问目标链接,点取消则不访问目标链接.

6.16修正在加入http时点击自己站点也弹警告的错误.重新修改bbscode.php即可.
6.16日以前修改的,请重新修改bbscode.php文件,修改如下
在$a=$http;
下面添加$a1=$url;
在$c=explode($b,$a);
下面添加$c1=explode($b,$a1);
把if(count($c)>1){
修改为if(count($c)>1 || count($c1)>1){
如果没有修改过bbscode.php,可以下载附件覆盖,覆盖前把附件bbscode.php里的$b='ltuo.com';  里面的ltuo.com换为你自己的域名即可.

效果如图

修改风格目录下的header.htm
找到</head>
在上面添加以下代码
Copy code
<script language="JavaScript">
function d() {
question =confirm("访问超出本站范围,不能保证安全,是否确定访问?")
  if (question =="0") {
      return false;
  }
}
</SCRIPT>

修改require目录下的bbscode.php
找到
Copy code
    if(!$url){
        $url="<a href=\"http://www.$http\" target=\"_blank\">[url]www.$http[/url]</a>";
    } elseif(!$name){
        $url="<a href=\"$http$url\" target=\"_blank\">$http$url</a>";
    } else{
        $url="<a href=\"$http$url\" target=\"_blank\">".str_replace('\\"','"',$name)."</a>";
    }

替换为
Copy code
 
  $a=$http;
  $a1=$url;
  $b='ltuo.com'; 
  $c=explode($b,$a);
  $c1=explode($b,$a1);
if(count($c)>1 || count($c1)>1){
    if(!$url){
        $url="<a href=\"http://www.$http\" target=\"_blank\">[url]www.$http[/url]</a>";
    } elseif(!$name){
        $url="<a href=\"$http$url\" target=\"_blank\">$http$url</a>";
    } else{
        $url="<a href=\"$http$url\" target=\"_blank\">".str_replace('\\"','"',$name)."</a>";
    }
}  else {
    if(!$url){
        $url="<a href=\"http://www.$http\" target=\"_blank\" onClick='return d()'>[url]www.$http[/url]</a>";
    } elseif(!$name){
        $url="<a href=\"$http$url\" target=\"_blank\" onClick='return d()'>$http$url</a>";
    } else{
        $url="<a href=\"$http$url\" target=\"_blank\" onClick='return d()'>".str_replace('\\"','"',$name)."</a>";
    }
}

其中$b='ltuo.com'把里面的ltuo.com换成你自己的网站域名即可.域名最好不加www.

修改时记得备份bbscode.php

两个域名的修改法:
也可以,只是略加几句代码就行了.
把这几句
$a=$http; 
$a1=$url;
  $b='ltuo.com'; 
  $c=explode($b,$a);
$c1=explode($b,$a1);
if(count($c)>1 || count($c1)>1){
修改为

$b='域名1'; 
$b1='域名2'; 
$c=explode($b,$http);
$c1=explode($b,$url);
$c11=explode($b1,$http);
$c12=explode($b1,$url);
if(count($c)>1 || count($c1)>1 || count($c11)>1 || count($c12)>1){

把域名1与域名2换成自己的域名即可.


查看完整版本: [-- [原创]点击非本站链接弹出警告确认,确定后访问,取消则不访问 --] [-- top --]


Powered by PHPWind v5.3 Code © 2003-05 PHPWind
Time 0.021446 second(s),query:3 Gzip disabled

You can contact us