一、在线人数统计
制作好一个Global.asa文件,并在里面写好相关代码。另外制作一个index.asp页面,在这个页面上方显示目前在线人数(5分钟内不操作页面算离线)和网页被访问的总次数。关闭页面后清零。
///////////////Global.asa文件:///////////////////////
<script language="VBScript" runat="Server">
Sub Application_onStart
Application("Count")=0
Application("Online")=0
end sub
Sub session_onStart
session.Timeout=5 //这里是设定会话结束时间(5分钟)
Application.Lock
Application("Count") = Cint(Application("Count")) + 1 //访问次数加1
Application("Online") = Cint(Application("Online")) + 1 //在线人数加1
Application.UnLock
end sub
Sub session_OnEnd
Application.Lock
Application("Online") = Cint(Application("Online")) - 1 //会话结束时在线人数减1
Application.UnLock
end sub
</script>
//////////////////index.asp文件部分代码///////////////////
总访问人数:<%response.Write(application("Count"))%>人
当前在线:<%response.Write(application("Online"))%>人
缺点:总访问人数不能累加,就没有意义,需要另外设置一个ACCESS数据库记录访问人数。而这不是global.asa文件所能实现的,必须使用ASP代码,如下:
二、总访问量 统计
在index.asp中加入以下代码:
Set conner = Server.CreateObject("ADODB.Connection")
conner.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("count.mdb")
conner.execute("update num set together=together+1 where id=3")
set rs=server.createobject("adodb.recordset")
rs.open "select * from num where id=3",conner,1,3
online=rs("online")
together=rs("together")
rs.close
set rs=nothing
conner.close
set conner=nothing
建立一个ACCESS数据库,字段分别是:id(自动编号) online together,其中online字段记录在线人数,together字段记录总访问人数,并且不断累加,每访问一次页面,together数据就会更新。