对“在ASP中如何实现用户只是登录一次?”还是有点不解????

szlzc 2003-04-23 08:01:30
对“在ASP中如何实现用户只是登录一次?”这个问题还是有点不明白,如果用session 记录用户资料,在新打开的浏览器窗口或是别的机器上登录,那么还是一样登录成功,就不存在同时不能用同一个帐号登录的问题了!我是希望只要用某一个帐号登录了,在该帐号没有退出来之前,就不能用这个帐号再登录。如果在数据库中用一个字段标志来记录用户是否登陆(假设0代表没有登录,1代表登录),是一种好方法,用户登录时就设定标志,退出时就恢复原值。但是如果用户不是正常的退出系统(没有注销),比如断电,或是直接关闭浏览器窗口,那么这么标志就不好更改了。请教哪位大侠能指出一个好的方法,不胜感激!多谢!
...全文
3 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
kingmd2 2003-04-25
关注!
回复
bluewhitegirl 2003-04-25
关注!
回复
yanzeyuan 2003-04-25
我正想问这个问题呢!
看来这个问题大家比较关注阿!

up!
回复
Newrocky 2003-04-25
对,我也有这样的问题,我想问一下,如果把SESSION的值设置为5的话,那用户在站内浏览主页花了5分钟(这种情况很正常吧?!),同样会被算为TIMEOUT的吗?还是,每打开一个页面的时候,SESSION就会重新开始计算TIMEOUT的呢?
回复
powerfei 2003-04-25
存在cookies里,当用户关闭网页,cookies值就没了,或者用onunload,当执行此事件就自己动跑出个新页,新页里有session.abandon,当然这样麻烦点了
回复
hillhero789 2003-04-23
可以访问所有的session对象,然后对比当前的用户的id是不是已经存在.

For Each strName in Session.Contents
if request("username")=Session.Contents(strName) then
response.write "登陆失败,你的id已经登陆!"
response.end
end if
Next
回复
blueshand 2003-04-23
你的办法可以实现,要再添点

在golbal.asa中设置session.timeout的直为5分钟
在solbal.asa中的 Session_OnEnd 过程中编写一段代码,将数据库字段至0

这样,即使用户非法退出,也可以在5分钟后将标识改为0
回复
Arong2001 2003-04-23
哦,好问题,关注
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2003-04-23 08:01
社区公告
暂无公告