欢迎光临
我们一直在努力

聊天室关键技术[用户断线]处理

建站超值云服务器,限时71元/月

在编聊天室时,处理用户断线是一个刺手的问题,特别是放到免费网站上,如果一味地靠global.asa,什么时候触发

session_onend,application_onend,都是一个不确定的数字,在设计时,合理地安排会带来意想不到的好处。

那么有什么最简便办法处理用户断线呢?

笔者经过试验,有了以下的方法:

聊天室用n个application("user" & n)来保存用户名,再用application("timebegin")来保存每个用户的登录时间,同

时,在用户登录时用session("timerbegin")保存登录时间(timer),在发言区设定刷新时间为n秒,每次刷新将session

("timebegin")的时间更新,同时判断timer – application("user"&session(userid)) 是否>n秒,如果是则说明该用户没

有自动刷新,即意味着已经断线,即可将该application("user"&n)设为空值,再提示该用户已退出即可。

部分代码:

total = application("allpeople")聊天总人数

aryhuman = split(total,";")

for i = lbound(aryhuman) to ubound(aryhuman) – 1

if application("user" & i) = "online" then

if int(timer) – int(application("timebegin" & i)) > 120 then

application("user" & i) = ""

temp = aryhuman(i)

aryname = split(temp,",")

hrefname = aryname(0)

for j = lbound(aryhuman) to ubound(aryhuman) – 1

if application("user" & j) = "online" then

application("content" & j) = "<font color=#000000>【公告】"&hrefname&"</font>" &"<font color=#f08000

>"& "断线…" & "</font><font color = #000000 class=p9>" & " <" & time() & "></font><br>" & application

("content" & j)

end if

next

end if

end if

next

%>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 聊天室关键技术[用户断线]处理
分享到: 更多 (0)