结构设计的软件:关于ASP的一个在线人数统计问题

来源:百度文库 编辑:神马品牌网 时间:2024/05/05 08:49:28
请问如何在ASP中不用Golobal.asa和session实现在线人数统计。
关于这个问题我在网上搜了半天也没有好的解决办法,各位能不能给个解决的方法或者思路也行啊,我XML不会阿,能不能用别的稍微简单的方法呢?

其实一般来说,ASP中统计在线人数都是用golobal.asa结合session或者application来做的,这样方便而且简单。如果不用常规的方法来做,这样也可以:

做一个单独的统计文件,比如count.asp,这个文件包含到需要显示在线人数的页面中去:

<%
user = Request.Cookies("username")
total = application("user")
If InStr(total,user) = 0 Then
application.lock
application("user") = total & ";" & user
application.unlock
End If
<html>
<head>
<meta http-equiv="refresh" content="2">
</head>
<body>
</body>
</html>
%>

在需要显示在线人数的页面可以这样调用:
user=split(application("user"),";")
num=ubound(user)
response.write num

至于这个count.asp包含的话,最好用框架来做,或者用IFrame来做。

用一个xml文件或者直接数据库保存在线信息

在线表可以存IP,用户名等,这样在显示在线的地方可以调用数据库获得数据,就不用分离一个狠复杂的字符串了

可以考虑用数据库来保存,但是数字有一定的偏差,记录用户最后活动的时间,当有一个用户活动时刷新数据库,把N分钟没有活动的用户删除

恩,我也想知道...