|
主题: 论坛中的用户在线,离线功能如何实现
|
ryonick
职务:普通成员
等级:2
金币:1.0
发贴:317
|
#12003/7/6 21:24:33
关于论坛里用户在不在线的问题 我知道可以在用户的数据表里增加一个ONLINE的字段.在线的话为1,离线为0.如果用户登陆就把ONLINE字段设成1.但我就是不知道如何在用户离开论坛的时候把ONLINE设成0啊. 听朋友说好象要在那个gla**.asa里文件做修改.
|
今晚在线
职务:普通成员
等级:3
金币:1.0
发贴:761
|
#22003/7/6 22:21:35
我的思路是这样的可以不用那个ASA文件
在ONLINE表里建三个字段一个记录IP用来鉴定不同用户的标志
一个记录登陆论坛时的时间
另一个记录最后刷新网页的时间,两个时间对比超过多少秒后
确认为离线 在程序中删除数据记录
|
爱多媒体爱生活
职务:普通成员
等级:2
金币:1.0
发贴:303
|
#32003/7/7 8:44:51
最后的刷新时间怎样获得呢?
|
今晚在线
职务:普通成员
等级:3
金币:1.0
发贴:761
|
#42003/7/7 11:08:04
我论坛里加了一个隐藏的FRAME 隔一段时间刷新一次,而这个FRAME里 增设了刷新最后时间的代码
或者干脆用户没打开一个页面就刷新一次最后动作时间
|
{ 在指尖上绽放的花朵 }
职务:普通成员
等级:5
金币:14.0
发贴:3209
|
#52003/7/8 23:36:43
楼上的前辈所说的是一种方法,
优点是准确,缺点是服务器资源占用太大。
另一种,每个在线用户对应一个sessionID,
如果SessionID消失,则判离线。
|
ryonick
职务:普通成员
等级:2
金币:1.0
发贴:317
|
#62003/7/9 8:34:39
参考过其他的论坛了。一般都是比较一下某用户最后执行页面操作和当前时间之比。如果超过某一直。则判断为离线。
行者的方法我也想到过。不过如何判断session消失呢? 每个用户的SESSION都是不同的
|