日期:2014-05-17  浏览次数:20467 次

想要一个思路,用户如何在网站内任一时刻只能有一个在登录使用?
保证任务何一个时刻,只有唯一的帐户能使在线。不允许多个人使用同一帐户登录。

 给你分配了一个帐户A , 你可以进入这个网站去操作, 只有你退出操作了, A帐户才可以再次登录网站。


现在我想要个思路, 我的疑问是B/S结构下, 我不知道该用户是否真的是退出(退出的方式,关IE,关机) ;

正常点退出,系统可以对帐户进行标记为“空闲” 但是当你是关IE 或掉电, 或是直接关机呢?


给个思路吧, 用户帐户登录表, 与ASP.NET 结合的思路。

------解决方案--------------------
这个你在数据库中加一个字段 是否登录, 在登录的时候可以把他 设置为真, 登录的时候要判断 是否在线,如果在线就不能登录了
------解决方案--------------------
个人认为判断登录的页面是否已经打开了
------解决方案--------------------
1楼只说了楼主说的一种情况,楼主要的是关IE或断电的时候也要把状态修改为空闲。
------解决方案--------------------
http://blog.csdn.net/huijunliang/article/details/7259889
------解决方案--------------------
果真是好帖
探讨

http://blog.csdn.net/huijunliang/article/details/7259889

------解决方案--------------------
探讨
保证任务何一个时刻,只有唯一的帐户能使在线。不允许多个人使用同一帐户登录。

给你分配了一个帐户A , 你可以进入这个网站去操作, 只有你退出操作了, A帐户才可以再次登录网站。


现在我想要个思路, 我的疑问是B/S结构下, 我不知道该用户是否真的是退出(退出的方式,关IE,关机) ;

正常点退出,系统可以对帐户进行标记为“空闲” 但是当你是关IE 或掉电, 或是直接……

------解决方案--------------------
这需要你有点灵活的头脑。不要固执地只“想”判断boolean值,不会比较datetime。
------解决方案--------------------
要注意的是,asp.net程序经常重启。那种搞什么Application、静态变量的所谓解决方案,是没有搞过产品的。可能可以在什么什么“播客”上写个视频教程,但是那是不从自身已经在不小的规模上运行了一年的产品角度去测试、而纯粹是随便写的。
------解决方案--------------------
不管用户怎么退出,都会有sessionEnd ;

sessionEnd 修改用户登录状态就OK。

当然sessionEnd 和实际上的退出有时间差。
大概就可以
------解决方案--------------------
直接请N个不同地区的人在网上点击算了。

点击频率低一点。
------解决方案--------------------
探讨

引用:
保证任务何一个时刻,只有唯一的帐户能使在线。不允许多个人使用同一帐户登录。

给你分配了一个帐户A , 你可以进入这个网站去操作, 只有你退出操作了, A帐户才可以再次登录网站。


现在我想要个思路, 我的疑问是B/S结构下, 我不知道该用户是否真的是退出(退出的方式,关IE,关机) ;

正常点退出,系统可以对帐户进行标记为“空闲” ……

------解决方案--------------------
前台Ajax定时更新数据表的在线时间 后台弄个服务程序 定时检测 当前时间-更新时间是否超过规定值 超过则判断用户已退出 否则用户为在线状态
------解决方案--------------------
登录的时候记录当前登录者的用户id

在一个页面用ajax请示查看用户的登录时间或者登录状态,都可以用来判断查看。。。

用户查询可以隔个五秒再查询。。。
------解决方案--------------------
用户表中增加一个字段记录,登录后把SESSIONID写入,然后用户点击每个页时再对比当前SESSIONID和该用户的是否一致即可