| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1409 人关注过本帖
标题:帮帮忙!!!
只看楼主 加入收藏
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
 问题点数:0 回复次数:36 
帮帮忙!!!

麻烦大家了,是这样的。我做了个在线人数统计,遇到这样的一个问题,打开一个浏览器后,记录是1次,然后我关闭浏览器,在打开一个浏览器后,记录是2,为什么呀?我觉得应该是1呀??大家帮帮忙!谢谢了!!

搜索更多相关主题的帖子: 关闭浏览器 在线人数 
2005-12-23 10:17
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
因为你使用的记次变量是保存在你计算机上的,如果改用session就应该是你想的那个结果了。

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2005-12-23 10:20
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
得分:0 

麻烦能说的具体些吗?


2005-12-23 10:29
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
得分:0 

我是这样写的
globe.asp
<SCRIPT Language=VBScript RUNAT=Server>
Sub Application_onStart
Session.timeout=20
application.Lock
application("online")=0
application.unLock
end sub

Sub Session_OnStart
application.Lock
application("online")=application("online")+1
application.unLock
End sub


Sub Session_OnEnd
application.Lock
application("online")=application("online")-1
application.unLock
End sub
</SCRIPT>

然后在调用它的文件中语句是:目前有<%=application("online")%>人在线。

哪里错了吗?谢谢了!!我实在不知道哪里的错!


2005-12-23 10:31
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
application("online")=0
因为application的性质是长时间保存的,即使关闭了浏览器,它还会被保存,而改用session("online")就能避免,session是关闭浏览器时自动删除

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2005-12-23 10:56
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
得分:0 
你是说把下面这个application("online")=0改为session("online")=0是吗?

好象还是不对。

Sub Application_onStart
Session.timeout=20
application.Lock
application("online")=0
application.unLock
end sub


2005-12-23 11:03
sun30
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2005-12-16
收藏
得分:0 
我到觉的你一开始写的没错!不过应该是global.asa文件吧!你这个名字没写错吧!

春天来啦!万物开始生长!
2005-12-23 11:11
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
得分:0 
名字没有错,是我写错了。大侠们帮帮看看这是怎么回事?

2005-12-23 11:13
conn
Rank: 2
等 级:新手上路
威 望:5
帖 子:420
专家分:0
注 册:2005-11-27
收藏
得分:0 
5楼的意思是让你改用session储存你的数据,因为application只有当服务器重启的时候他储存的内容才会消失,而session是当超时或者关闭浏览器其内容都会消失

我是新手,但我很虚心,对我发的问题请不要取笑,谢谢
2005-12-23 11:13
sun30
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2005-12-16
收藏
得分:0 
这个问题我也想知道!
我认为lyf写的没有错啊!如果用session来储存数据的话。它针对的是每一个访客。如何来统计当前在线的所有用户呢?
而Application可以记载所有客户信息。当第一次运行的时候。触发Application_onStart让 application("online")=0。然后每来一个用户就触发Session_OnStart让application("online")加1。当这个用户走/超时的时候就触发application("online")-1去掉这个用户。
我认为没有错啊!
想知道原因!继承关注!

春天来啦!万物开始生长!
2005-12-23 11:24
快速回复:帮帮忙!!!
数据加载中...
 
   



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

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