标题:ASP关于用global.sas文件统计在线人数的问题
只看楼主
kuangjingqiang
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-8-9
 问题点数:0 回复次数:4 
ASP关于用global.sas文件统计在线人数的问题
global.sas代码如下:
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
 Sub Application_OnStart
Application("ActiveUsers") = 0
End Sub
Sub   Application_OnEnd()
        
End   Sub

Sub Session_OnStart
Session.Timeout = 20
Application.Lock
Application("ActiveUsers") = Application("ActiveUsers") + 1
Application.UnLock
End Sub
Sub Session_OnEnd
Application.Lock
Application("ActiveUsers") = Application("ActiveUsers") - 1
Application.UnLock
End Sub

</SCRIPT>


在新的asp中引用代码如下:
<% =application("ActiveUsers") %>

在服务器中运行,但统计不了在线人数。
请问为什么会这样呢?
搜索更多相关主题的帖子: sas Application Sub global ASP 
2008-08-09 18:24
tianyu123
Rank: 1
等 级:新手上路
威 望:2
帖 子:576
专家分:0
注 册:2007-8-26
得分:0 
global.sas
后缀都写错了

正确为:global.asa

改变一切,须从改变观念开始!
2008-08-09 19:59
yangzeng
Rank: 1
等 级:新手上路
威 望:1
帖 子:277
专家分:0
注 册:2008-4-23
得分:0 
application_onend过程都丢了代码了,问题好多哟
2008-08-09 23:05
kuangjingqiang
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-8-9
得分:0 
问题,我已经自己搞清了。。
不是我写错asa,而是我在论坛打错字而已。。

还有,不是有没写 application_onend 的问题,因为,只要当服务器运行时,就运行application_onstart ,而只有,和仅有,服务器关闭时,才运行application_onend的过程,换句话说:就是application_onend 写不写也没关系,因为根本就没机会运行它!除非你的服务器关闭了!!

我自己已发现,和找出问题了。。
根本问题是,global.asa 由于这个文件比较特殊,所以,如果用DW写的话,开头会生成一些DW的代码,将这些代码去掉,程序就可以正常运行!
还有一个要注意的地方,这个文件必须要放到你 服务器 跟目录下,否则写了等于没写。。。一定要放在跟目录下!!

还有,这个程序还不是很完善!

这是详细的程序:
global.asa:<script language=vbscript runat=Server>
    sub Application_Onstart
      Application.lock
      application("all")=0
      application("online")=0
          application("check")=0
      application.unlock
      
    end sub
</script>
<script language=vbscript runat=Server>
    sub Application_Onend
      Application.lock
      application("all")=0
      application("online")=0
      application.unlock
    end sub
</script>
<script language=vbscript runat=Server>
    sub Session_Onstart
    application.lock
    application("all")=application("all")+1
    application("online")=application("online")+1
    application.unlock
    end sub
</script>
<script language=vbscript runat=Server>
    sub Session_Onend
    application.lock
    application("online")=application("online")-1
        application("check")=application("check")+1
    application.unlock
    end sub
</script>

check.asp:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>检查在线人数</title>
</head>

<body>
<% session.timeout=1 %>
当前在线人数:<% =application("online") %>
本网站总访问人数:<% =application("all") %>
其中执行会话结束事件<% =application("check") %>次
</body>
</html>



还有,本人是一个菜鸟,请不要见怪,谢谢!
2008-08-10 11:06
twtrwr
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:39
专家分:102
注 册:2011-3-31
得分:0 
给我很大的启示,,我正好遇到这个问题,,呵呵

男人无所畏惧,应越战越勇
2011-04-02 21:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-227484-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.589708 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved