实况页面查看器显示号码 [英] Show Number of Live Page Viewers

查看:198
本文介绍了实况页面查看器显示号码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

可能重复:
  <一href="http://stackoverflow.com/questions/4649926/how-to-count-the-site-current-visitors-using-java-script-or-php">how通过计算该网站目前游客Java脚本或者PHP

我有我的网站上嵌入流,但我想拉在页面上直播的观众人数。有没有办法用PHP / AJAX做到这一点,表明人们当前观看我的网页中的一个数字?

I have an embedded stream on my website, but I want to pull the number of live viewers on the page. Is there a way to do this with PHP / AJAX, show the number of people currently viewing one of my webpages?

推荐答案

免责声明:我做了这样的事情在很久以前,所以这里是丑陋的老code(这我不打算把精力投入到制作看起来更好/不是我第一次开始编程,因为这只是给你它是如何工作的一个想法,而不是勺子喂任何特定的code)。

DISCLAIMER: I did something like this a LONG time ago, so here is the ugly old code (That I'm not going to put effort into making look nicer / not when I first started programming as this is just to give you an idea of how it can be done, and not to spoon feed any specific code).

$timeout = time() - (20);

$sessid_exist = mysql_query("SELECT sessid FROM bw_sessions WHERE sessid='" . session_id() . "'") or die (mysql_error());
$sessid_check = mysql_num_rows($sessid_exist);

if ($_SESSION['bw_username']) {
                $sql = mysql_query("UPDATE bw_sessions SET timestamp='" . time() . "', username='" . $_SESSION['bw_username'] . "' WHERE sessid='" . session_id() . "'");
} else {
  if($sessid_check > 0){
                $sql = mysql_query("UPDATE bw_sessions SET timestamp='" . time() . "' WHERE sessid='" . session_id() . "'");
              } else {
              $sql = mysql_query("INSERT INTO bw_sessions (id, username, sessid, timestamp, ip)
        VALUES(null, '', '" . session_id() . "', '" . time() . "', '" . $_SERVER['REMOTE_ADDR'] . "')") or die (mysql_error());
          }
}


$sql = mysql_query("SELECT distinct sessid FROM bw_sessions WHERE username='' AND timestamp >= '$timeout' ORDER BY timestamp DESC") or die (mysql_error());
$sql2 = mysql_query("SELECT distinct sessid,username FROM bw_sessions WHERE username!='' AND timestamp >= '$timeout' ORDER BY username DESC") or die (mysql_error());
$num_guests = mysql_num_rows($sql);
$num_reg = mysql_num_rows($sql2);
?>

<font size='1'>Currently Online: <br>
                        <?=$num_guests;?> Guests<br>
                        <?=$num_reg;?> Registered users

您只需要做一个表,并持有SESSION_ID的..然后查询该表的任何最近的活动。如果你想实时更新,把code以上(修改您的表设计)的online.php,并通过jQuery调用它每x秒​​,或者无论你决定这样做。

You just need to make a table and hold session_id's.. then query that table for any "recent" activity. If you want real time updates, put code above (modified to your table design) in "online.php" and call it via jquery every x seconds, or however you decide to do it.

这篇关于实况页面查看器显示号码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆