当前位置: 首页 > 图文教程 > 网络编程 > ASP > 不用Golobal和session实现在线人数统计

ASP
网络寻呼机数据库版删除选中的消息deletemessage.asp
网络寻呼机数据库版隐藏文件watch.asp
网络寻呼机数据库版总结
一种在线人数统计方法(只用1个APPLICATION)
用ASP.NET构建完整E-mail发送系统
用ASP.NET建立简单的Web Form
为你的ASP程序制作一个编译组件(上)
为你的ASP程序制作一个编译组件(中)
为你的ASP程序制作一个编译组件(下)
利用ASP将HTML格式数据传输给Excel(1)
利用ASP将HTML格式数据传输给Excel(2)
利用ASP将HTML格式数据传输给Excel(3)
利用ASP将HTML格式数据传输给Excel(4)
磁盘ID在ASP源码防拷贝中的应用
WEB环境下打印报表的crystal的解决方案
如何把存储在数据库中的图片根据自己的需要的大小显示出来
客户端用ASP+rds+VBA参生报表
利用ASP.NET设计FTP文件上传(上)
利用ASP.NET设计FTP文件上传(中)
利用ASP.NET设计FTP文件上传(下)

ASP 中的 不用Golobal和session实现在线人数统计


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

实现在线人数统计最常用的方法就是golobal.asa结合session做,但这种方法有两个不利:
1、每个session要占用12k的服务器内存空间,为了人数+1就要付出12k内存的代价。
2、golobal.asa要放在网站的根目录下才会起作用,而且根目录只能有一个golobal,矛盾突出。
为此,有一种使用cookie和application在asp文件中实现在线统计的方法,欢迎批评指正,共同探讨:
第一步:做一个框架,包含隐藏框架(count.asp)
第二步:编写count.asp
<%
user=request.cookies("21bbsusername")
totaluser=application("user")
if instr(totaluser,user)=0 then
application.lock
application("user")=totaluser&";"&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 
%>