Heim > php教程 > php手册 > 利用Jquery+php显示当前在线用户

利用Jquery+php显示当前在线用户

WBOY
Freigeben: 2016-06-21 08:57:25
Original
911 Leute haben es durchsucht

利用Jquery框架,Ajax调用当前在线用户

function UpdateOnline(){

  1.    if (arguments[0]==true){
  2.        $.ajax({
  3.            url:'ajax.php?do=updateonline',
  4.            type:'GET',
  5.            success:function(){
  6.                $('#updateonline').html(arguments[0])
  7.            }
  8.        }
  9.        );
  10.    }else{
  11.        $.ajax({url:'ajax.php?do=updateonline',type:'GET'});
  12.    }
  13. }

这个updateonline是div的ID。还有就是调用这个函数!
  1. $(document).ready(function(){
  2.    UpdateOnline(true);
  3.    window.setInterval("UpdateOnline(true)",60000);
  4. });

下面是服务端处理代码:
  1. $Now=time();
  2. $FileName='online.xml';
  3. $XML=new DomDocument;
  4. $XML->load($FileName);
  5. $Items=$XML->getElementsByTagName("item");
  6. $I=0;
  7. $AddXML=true;
  8. foreach ($Items as $Item){
  9.    $IP=$Item->childNodes->item(0)->nodeValue;
  10.    $Time=$Item->childNodes->item(1)->nodeValue;
  11.    if($IP==GetIP()){
  12.        $AddXML=false;
  13.    }
  14.    if($IP==@$_SESSION['IP']){
  15.        $XML_Online=$XML->getElementsByTagName("online")->item(0);
  16.        $XML_Online_Item_Select=$XML->getElementsByTagName("item")->item($I);
  17.        $XML_Online_Item=$XML->createElement("item");
  18.        $NewIP=$XML->createElement("ip",$IP);
  19.        $XML_Online_Item->appendChild($NewIP);
  20.        $NewTime=$XML->createElement("time",$Now);
  21.        $XML_Online_Item->appendChild($NewTime);
  22.        $XML_Online->replaceChild($XML_Online_Item,$XML_Online_Item_Select);
  23.        $XML->save($FileName);
  24.    }
  25.    if(round(($Now-$Time)/60)>1){
  26.       $Item=$XML->documentElement->getElementsByTagName("item")->item($I);
  27.       $XML->documentElement->removeChild($Item);
  28.       $XML->save($FileName);
  29.    }
  30.    $I++;
  31. }
  32. if($AddXML){
  33.        $XML->formatOutput = true;
  34.        $XML_Online=$XML->getElementsByTagName("online")->item(0);
  35.        $XML_Online_Item=$XML->createElement("item");
  36.        $XML_Online_Item_IP=$XML->createElement("ip",GetIP());
  37.        $XML_Online_Item->appendChild($XML_Online_Item_IP);
  38.        $XML_Online_Item_Time=$XML->createElement("time",$Now);
  39.        $XML_Online_Item->appendChild($XML_Online_Item_Time);
  40.        $XML_Online->appendChild($XML_Online_Item);
  41.        $XML->save($FileName);
  42.        $_SESSION['IP']=GetIP();
  43. }
  44. if($Items->length==0){
  45.    echo'1';
  46. }else{
  47.    echo $Items->length;
  48. }
  49. unset($Now,$FileName,$XML,$Items,$I,$AddXML);

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

下面是XML文件
  1. 127.0.0.1



Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage