您现在的位置是:首页 >

微信在线人数统计 两种统计当前在线人数的方法

火烧 2022-10-26 20:02:34 1078
两种统计当前在线人数的方法   第一种方法 利用AltaVi ta搜索引擎来实现 这种方法是检查与你的站点链接的数目 这里用AltaVi ta搜索引擎来实现 在这里 我们用如下搜索引擎 : am ea

两种统计当前在线人数的方法  

  第一种方法 利用AltaVista搜索引擎来实现 这种方法是检查与你的站点链接的数目 这里用AltaVista搜索引擎来实现 在这里 我们用如下搜索引擎 :&search=Search 这是AltaVista的一个文本版本 这样可以节省我们大量的需要解析HTML的代码 接着 我们使用rawurlencode()来处理我们确切的URL保证Altavista能够正确地处理它 处理如下 $url = " $url_encoded = rawurlencode($url); $url_to_check = " kl=XX&pg=q&text=yes&q=link:$url_encoded&search=Search";   这样 我们可以通过file()函数回取URL了 $num_searched = file($url_to_check);   现在我们所取回的文件已经存放在数组$num_searched中 现在要在数组中查找我们想要的文本"About ( *) pages found " ( *)表示在任何东西 而且 如果没有人链接我们的URL AltaVista将显示"AltaVista found no document matching your query " 因为我们想知道多少个人正在与我们的URL进行着链接 那段文本将被看 作 个人链接 $url = " $url_encoded = rawurlencode($url); $url_to_check = ":$url_encoded&search=Search"; $num_searched = file($url_to_check); for ($i = ; $i < count($num_searched); $i ) { if(eregi( "About ( *) pages found " $num_searched[$i])){ $total_links = eregi_replace( " About ( *) pages found " " " $num_searched[$i]); } elseif(eregi( "AltaVista found no document matching your query " $num_searched[$i])){ $total_links = " "; } }   这样 我们可以通过打印语句得到我们的查找结果了 print("$total_links people are linking to $url");

  第二种方法 利用MYSQL数据库以下是我转贴的一篇文章 来自于PHP中文用户 起方式是利用临时数据表处理当前连接 具体内容如下 *************************************************************** 首先 用MySQL的工具建一个表 CREATE TABLE ccol( id integer not null auto_increment #记录的ID ip char( ) not null #访问者的IP地址 dtstamp datetime not null #最后访问时间 uri char( ) #访问者请求的URI primary key (id) );

  然后 写一段PHP代码 $duration= ; require "db php"; //包含DBSQL 详情可以参考我的另一篇文章 $ccol=new dbSQL; $ccol >connect(); $ccol >query("DELETE FROM ccol WHERE (UNIX_TIMESTAMP(NOW()) UNIX_TIMESTAMP(dtstamp))>$duration"); //删除超过半小时的记录 $ccol >query("SELECT * FROM ccol WHERE ip="$REMOTE_ADDR""); //判断当前的IP是否在该表中存在 if ($ccol >nf()) { $ccol >next_record();//下移找到的记录数组的指针 $id=$ccol >f("id"); $ccol >query("UPDATE ccol SET dtstamp=now() uri="$REQUEST_URI" WHERE id=$id"); //设置最后访问时间和访问页面 } else{ $ccol >query("INSERT INTO ccol VALUES ( "$REMOTE_ADDR" now() "$REQUEST_URI")"); }

微信在线人数统计 两种统计当前在线人数的方法

  $ccol >query("SELECT COUNT(*) AS ccol FROM ccol WHERE (UNIX_TIMESTAMP(NOW()) UNIX_TIMESTAMP(dtstamp))<=$duration"); //找出在半个小时内的记录 后面的WHERE子句可有可无 超出时间的已经被删除了 $ccol >next_record() echo "在线人数 " $ccol >f("ccol"); $ccol >free_result();

lishixinzhi/Article/program/PHP/201311/21256  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码