帝国cms教程

            本栏目提供帝国cms教程,帝国cms视频教程,帝国cms模板制作教程,帝国cms使用教程.

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

            发表于:2019-05-23 点击: 栏目:

            帝国cms教程

            本功能实现了如果用户登陆了, 就记录他的信息  如果未登陆就记录他的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("http://city.ip138.com/city0.asp");
                   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("http://int.dpool.sina.com.cn/iplookup/iplookup.php?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
                    }
                
            }
            //-会员空间访客显示结束--------------       
            ?>

            至此全部安装完成

            相关推荐

                      金宝棋牌,金宝棋牌二八杠,捕鱼赚钱手游金宝棋牌,金宝棋牌二八杠,捕鱼赚钱手游