| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1407 人关注过本帖
标题:帮帮忙!!!
只看楼主 加入收藏
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
得分:0 
9楼说“application只有当服务器重启的时候他储存的内容才会消失”没有错。但是我现在怎么改呢?麻烦给些意见,我还是没能改出来。谢谢!

2005-12-23 11:26
冰镇柠檬汁儿
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 11:33
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
得分:0 
但是就是我在上面说的问题:打开一个浏览器后,记录是1次,然后我关闭浏览器,在打开一个浏览器后,记录是2。这样应该不对呀,我已经关闭了一个浏览器,只有一个浏览器打开,应该记录是1呀。为什么是2??

2005-12-23 11:44
caiyakang
Rank: 2
等 级:新手上路
威 望:5
帖 子:2111
专家分:0
注 册:2005-3-24
收藏
得分:0 
Session有 一个超时对象
默认好象是20分,Sessiontimeout
就是你关闭了,时间没到,服务器就认为这个Session还是存在的
Application只有当WEB服务器停止才会被认为是停止

中国人的财富网:http://www..cn/
2005-12-23 12:08
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
<SCRIPT Language=VBScript RUNAT=Server>
Sub Application_onStart
Session.timeout=20
Session("online")=0
end sub

Sub Session_OnStart
Session("online") = Session("online") + 1
End sub


Sub Session_OnEnd
Session("online") = Session("online") - 1
End sub
</SCRIPT>
你试试


本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2005-12-23 13:19
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
得分:0 
15楼,我修改成你那样,打开浏览器始终都是1人啊!

2005-12-23 13:57
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
<SCRIPT Language=VBScript RUNAT=Server>
Sub Application_onStart
Application("onlineNum")=0
end sub

Sub Session_OnStart
Application("onlineNum")=Application("onlineNum")+ 1
End sub


Sub Session_OnEnd
Application("onlineNum")=Application("onlineNum")- 1
End sub
</SCRIPT>
用Application应该可以,当用户上线时发生Session_OnStart事件Application变量加1。当用户下线时发生Session_OnEnd事件,Application变量减1楼主的情况可能是退出时没有对Application-1而造成的。

2005-12-23 14:25
sun30
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2005-12-16
收藏
得分:0 
[QUOTE]Session有 一个超时对象
默认好象是20分,Sessiontimeout
就是你关闭了,时间没到,服务器就认为这个Session还是存在的
Application只有当WEB服务器停止才会被认为是停止[/QUOTE]

楼主再好好看看14楼中caiyakang的回答。那才是问题的关键。之所以会出现楼主上面提到的问题。是因为关闭IE无法触发session_onEnd事件。触发这个事件只能是1》session超时 2>调用session.abandon方法。

春天来啦!万物开始生长!
2005-12-23 14:49
sun30
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2005-12-16
收藏
得分:0 

我试了一下。设session.timeout=1.
像楼主那样先打开两个IE窗口。都刷新一下。显示的是2人在线。再关闭一个IE。这时再刷新。显示的还是2人在线。当时间过去1分钟后(设session.timeout=1)。再刷新一下。显示的就是1人在线.


春天来啦!万物开始生长!
2005-12-23 14:52
lyf
Rank: 1
等 级:新手上路
帖 子:238
专家分:0
注 册:2005-11-17
收藏
得分:0 
19楼说的没有错,session.timeout=1设置为1时,过去1分钟后在刷新变为1人,但是我想关闭浏览器后,刷新页面就变为1,这样问题在哪里??

2005-12-23 15:08
快速回复:帮帮忙!!!
数据加载中...
 
   



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

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