云浮旅行社报价表中旅:我用ASP的Application对象编写计数器,为什么在网页上只显示:-1,#IND呢?

来源:百度文库 编辑:中科新闻网 时间:2024/05/09 14:57:31
代码如下:
<html>
<body>
<% Application("counter")=Application("counter")+1 %>
您是第<%=Application("counter") %>位来客!
</body>
</html>

为了统计网站的在线人数,我们可以在Global.asa文件中包含如下代码:

<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Application_OnStart

' 当服务器开启时,设置用户计数器为0
Application("ActiveUsers") = 0
End Sub
Sub Session_OnStart

' 设置Session对象的有效时间为20分钟(也可以更长,但是越长对服务器的资源' 占用越多,因为服务器不接受少于20分钟的有效时间,所以设置少于20分钟的'有效时间是无效的)
Session.Timeout = 20

' 当开始一个Session时用户计数器加1
Application.Lock
Application("ActiveUsers") = Application("ActiveUsers") + 1
Application.UnLock
End Sub
Sub Session_OnEnd

' 当结束一个Session时用户计数器减1
Application.Lock
Application("ActiveUsers") = Application("ActiveUsers") - 1
Application.UnLock
End Sub
</SCRIPT>

这样,网站的在线人数就被统计出来了,我们可以利用如下一个ASP页面(js.asp)将它显示出来: jsh.asp:
<%@ Language=VBScript %>
<HTML>
<HEAD>
<TITLE>统计在线人数</TITLE>
</HEAD>
<BODY>
<B><FONT COLOR="#CC0000">当前在线<%= Application("ActiveUsers") %>人</FONT></B>
</BODY>
</HTML>