注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

天边云E家 shaoruisky

IT博文共享,知识的海洋

 
 
 

日志

 
 

利用Jquery+php显示在线用户  

2013-10-16 18:00:27|  分类: jquery |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

利用Jquery框架,Ajax调用当前在线用户
function UpdateOnline(){

   if (arguments[0]==true){
       $.ajax({
           url:'ajax.php?do=updateonline',
           type:'GET',
           success:function(){
               $('#updateonline').html(arguments[0])
           }
       }
       );
   }else{
       $.ajax({url:'ajax.php?do=updateonline',type:'GET'});
   }
}


这个updateonline是div的ID。还有就是调用这个函数!

$(document).ready(function(){
   UpdateOnline(true);
   window.setInterval("UpdateOnline(true)",60000);
});


下面是服务端处理代码:

$Now=time();
$FileName='online.xml';
$XML=new DomDocument;
$XML->load($FileName);
$Items=$XML->getElementsByTagName("item");
$I=0;
$AddXML=true;
foreach ($Items as $Item){
   $IP=$Item->childNodes->item(0)->nodeValue;
   $Time=$Item->childNodes->item(1)->nodeValue;

   if($IP==GetIP()){
       $AddXML=false;
   }
   if($IP==@$_SESSION['IP']){
       $XML_Online=$XML->getElementsByTagName("online")->item(0);
       $XML_Online_Item_Select=$XML->getElementsByTagName("item")->item($I);
       $XML_Online_Item=$XML->createElement("item");
       $NewIP=$XML->createElement("ip",$IP);
       $XML_Online_Item->appendChild($NewIP);
       $NewTime=$XML->createElement("time",$Now);
       $XML_Online_Item->appendChild($NewTime);
       $XML_Online->replaceChild($XML_Online_Item,$XML_Online_Item_Select);
       $XML->save($FileName);
   }
   if(round(($Now-$Time)/60)>1){
      $Item=$XML->documentElement->getElementsByTagName("item")->item($I);
      $XML->documentElement->removeChild($Item);
      $XML->save($FileName);
   }
   $I++;
}
if($AddXML){
       $XML->formatOutput = true;
       $XML_Online=$XML->getElementsByTagName("online")->item(0);
       $XML_Online_Item=$XML->createElement("item");
       $XML_Online_Item_IP=$XML->createElement("ip",GetIP());
       $XML_Online_Item->appendChild($XML_Online_Item_IP);
       $XML_Online_Item_Time=$XML->createElement("time",$Now);
       $XML_Online_Item->appendChild($XML_Online_Item_Time);
       $XML_Online->appendChild($XML_Online_Item);
       $XML->save($FileName);
       $_SESSION['IP']=GetIP();
}
if($Items->length==0){
   echo'1';
}else{
   echo $Items->length;
}
unset($Now,$FileName,$XML,$Items,$I,$AddXML);


配合了session来存储IP地址以区分用户。

下面是XML文件

<?xml version="1.0" encoding="utf-8"?>
<online>
<item><ip>127.0.0.1</ip><time>1232254720</time></item>
</online>

  评论这张
 
阅读(105)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016