有种方法是用数据库实现的很耗资源
如果你想听可以继续,如果不想听则返回!
因为我们无法知道对方何时关闭浏览器走人,所以我们要给出一个时间来作为对方不线的依据
例如:5分钟 就是说对方上一次操作你所纪录的时间和当前时间相差大于了5分钟,我们则认为他不在线,条件是对方的每一次操作你都必须更新你数据库中相应ID的时间。大概就是这样的,其实解决方法很多,你可以去www.google.com上去搜,我的这种方法不太好!
实现的方法都有了,你还要代码做什么,因该自己写啊,锻炼一下,也就是一些简单的数据库操作!
如果有什么不妥之处不要笑话我,帮我指出,我也才学没多长时间!
如果你想听可以继续,如果不想听则返回!
因为我们无法知道对方何时关闭浏览器走人,所以我们要给出一个时间来作为对方不线的依据
例如:5分钟 就是说对方上一次操作你所纪录的时间和当前时间相差大于了5分钟,我们则认为他不在线,条件是对方的每一次操作你都必须更新你数据库中相应ID的时间。大概就是这样的,其实解决方法很多,你可以去www.google.com上去搜,我的这种方法不太好!
实现的方法都有了,你还要代码做什么,因该自己写啊,锻炼一下,也就是一些简单的数据库操作!
如果有什么不妥之处不要笑话我,帮我指出,我也才学没多长时间!
解决方案 »
- 做文章评论页面
- cakephp email 问题
- PHP中关于flock的问题
- 关于淘宝联合登录接口,有谁做过,讨论一下
- 客户管理系统转单(带单),求思路,求思路!!!
- 网页中经常有些块显示的不同的内容,但是有相同的外观,大家一般怎样处理的?是每个板块分别写代码还是写一个类继承?
- PHP怎么样简便准确的获得昨日的时间和日期?
- 请帮忙介绍一款网站上传下载的免费软件及下载网址
- 基础问题:字符串处理!!!
- 在php中,如何让客户端能够提取到最新的数据,而不是调用浏览器缓存中的数据?(菜鸟在csdn的"处女提问",请大家支持一下)
- 怎样实现如下功能。急问。可以给费用。
- =========PHP发EMAIL问题.==========在线等待
$ip = $_SERVER["REMOTE_ADDR"];
$time = time();
$minutes = 15;
$found = 0;
$users = 0;
$user = "";$tmpdata = $DOCUMENT_ROOT."/online/data";if (!is_file("$tmpdata/online.txt"))
{
$s = fopen("$tmpdata/online.txt","w");
fclose($s);
chmod("$tmpdata/online.txt",0666);
}$f = fopen("$tmpdata/online.txt","r+");
flock($f,2);while (!feof($f))
{
$user[] = chop(fgets($f,65536));
}fseek($f,0,SEEK_SET);
ftruncate($f,0);foreach ($user as $line)
{
list($savedip,$savedtime) = split("|",$line);
if ($savedip == $ip) {$savedtime = $time;$found = 1;}
if ($time < $savedtime + ($minutes * 60))
{
fputs($f,"$savedip|$savedtimen");
$users = $users + 1;
}
}if ($found == 0)
{
fputs($f,"$ip|$timen");
$users = $users + 1;
}fclose ($f);
print "在线人数: <font color=black>$users</font>
";
?>