当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用ASP实现号码转换程序实例

ASP
在ASP中使用SQL语句之10:视图
在ASP中使用SQL语句之11:记录统计
VBS、ASP代码语法加亮显示的类(2)
asp作品保护方案
使用NextRecordset通过一个Connection输出多个select查询
超长字符的智能分页-支持HTML
远程获取内容,并将内容存在本地电脑上,包括任何文件
把文件存进access数据库然后取出来供人下载的代码
一个分页存储过程
在asp文件中访问flash详细信息
关于生成目录树结构的类
用自定义函数获取汉字的首字母
asp在SQL SER2k中新建帐号和给帐号权限的实现
不用 EOF 以加快记录循环
js的单元格颜色间隔
根据选择的Checkbox动态在表格中列出选择的值
URL欺骗
汉字转化为拼音
一个不需要第三方组件,可实现华简单图形的类
组合查询之核心:拼接字符串

用ASP实现号码转换程序实例


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 158 ::
收藏到网摘: n/a

  在编聊天室时,处理用户断线是一个刺手的问题,特别是放到免费网站上,如果一味地靠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