RELATEED CONSULTING
相关咨询
选择下列服务马上在线沟通
服务时间:9:00-20:00
你可能遇到了下面的问题
关闭右侧工具栏

技术支持

帝国cms会员空间增加最近访客功能

  • 作者:郑州融科网络
  • 发表时间:2019-09-10
  • 人气:

本功能实现了如果用户登陆了, 就记录他的信息  如果未登陆就记录他的IP地区作为信息..

第一步: 先创建数据表  在后台执行语句

注意: _userkjf  前面要加上您的表前缀哦...  

CREATE TABLE `这里是你的数据库表前缀_userkjf` (   `id` int(11) NOT NULL auto_increment,   `lfuserid` varchar(20) character set gbk default NULL,   `bfuserid` varchar(100) character set gbk NOT NULL,   `ip` char(50) character set gbk default NULL,   `ipdl` char(50) character set gbk default NULL,   `lftime` char(20) character set gbk NOT NULL,   PRIMARY KEY  (`id`),   UNIQUE KEY `id` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=65 DEFAULT CHARSET=latin1 AUTO_INCREMENT=65 ;

第二步: 把以下代码 复制到  e/space/template/default/header.temp.php

<?php //取得登陆者信息 $userid =getcvar('mluserid');    //会员ID   $uid=$_GET['userid'];//当前空间的主人ID      if ($uid!=$userid) {   //如果访客已登陆  则取得访客信息并写入数据库   if($userid)   {                   $lfUname = $_COOKIE["lfUname"];//获取访客信息      $fkdd=$empire->fetch1("select * from {$dbtbpre}userkjf where  bfuserid='".$uid."' and lfuserid='".$userid."'");                  if($fkdd)           {           }   else          {      $empire->query("insert into {$dbtbpre}userkjf(lfuserid,bfuserid,lftime) values($userid,$uid,'".date('Y-m-dH:i:s')."')");       }   }   else//如果访客未登陆  则取得访客信息并写入数据库   {           //取得IP 和地区            $gifo = new get_gust_info();            $ip=$gifo->Getip();            $ipadds = $gifo->Getaddress();            foreach($ipadds[0] as $value){                    $ipdl.=iconv("utf-8","gbk",$value);               }                          //获取访客信息           $lfUname = $_COOKIE["lfUname"];                          if($lfUname=='')           {           $empire->query("insert into {$dbtbpre}userkjf(bfuserid,ip,ipdl,lftime) values($uid,'$ip','".$ipdl."','".date('Y-m-d      H:i:s')."')");                   setcookie("lfUname","游客",time()+1200);   //创建来访客信息  20分钟过期           }   } } ?> <?php // 作用取得客户端的ip、地理信息、浏览器、本地真实IP class get_gust_info {        ////获得访客真实ip   function Getip(){    if(!empty($_SERVER["HTTP_CLIENT_IP"])){          $ip = $_SERVER["HTTP_CLIENT_IP"];    }    if(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ //获取代理ip     $ips = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);    }    if($ip){       $ips = array_unshift($ips,$ip);    }            $count = count($ips);    for($i=0;$i<$count;$i++){         if(!preg_match("/^(10|172.16|192.168)./i",$ips[$i])){//排除局域网ip       $ip = $ips[$i];       break;          }      }      $tip = empty($_SERVER['REMOTE_ADDR']) ? $ip : $_SERVER['REMOTE_ADDR'];    if($tip=="127.0.0.1"){ //获得本地真实IP       return $this->get_onlineip();       }else{       return $tip;    }   }          ////获得本地真实IP   function get_onlineip() {       $mip = file_get_contents("");        if($mip){            preg_match("/[.*]/",$mip,$sip);            $p = array("/[/","/]/");            return preg_replace($p,"",$sip[0]);        }else{return "获取本地IP失败!";}    }          ////根据ip获得访客所在地地名   function Getaddress($ip=''){    if(empty($ip)){        $ip = $this->Getip();       }    $ipadd = file_get_contents("?ip=".$ip);//根据新浪api接口获取    if($ipadd){     $charset = iconv("gbk","utf-8",$ipadd);        preg_match_all("/[x{4e00}-x{9fa5}]+/u",$charset,$ipadds);             return $ipadds;   //返回一个二维数组    }else{return "addree is none";}     } }      ?>      <?php //-会员空间访客显示开始----------------- $fkSQL="select * from {$dbtbpre}userkjf where bfuserid='".$uid."' order by id desc limit 5"; $fkSQL=$empire->query($fkSQL);      while($rs=$empire->fetch($fkSQL)) {              if($rs[lfuserid])         {                 $fkxxrs=$empire->fetch1("select userid,truename,userpic from {$dbtbpre}enewsmemberadd where userid=$rs[lfuserid] limit      2"); ?>                <li> <a href="/e/space/index.php?userid=<?=$fkxxrs[userid]?>"><img src="<?=$fkxxrs[userpic]?$fkxxrs[userpic]:'/templets/member/common/images/dfboy.png'?>"   alt="<?=$fkxxrs[truename]?>" /></a> <a href="/e/space/index.php?userid=<?=$fkxxrs[userid]?>"><?=$fkxxrs[truename]?></a> </li>                          <?php                }         else         { ?>                         <li>                             <a href="#"><img src="../data/images/nouserpic.gif"   /></a>                         <span>                                 <div><?=$rs[ipdl]?"来自:".$rs[ipdl]:"未知地区"?></div>                             <br>                             <div><?=$rs[lftime]?></div>                         </span>                     </li> <?php         }      } //-会员空间访客显示结束--------------        ?>

至此全部安装完成

本文章网址,转载请保留此链接http://www.zzvy.cn/cms/1166.html
本文标签:
相关阅读: