黑马程序员技术交流社区

标题: 实现同一用户登陆,后登陆用户不能登陆成功,求思路 [打印本页]

作者: cmcm2014    时间: 2014-3-23 03:20
标题: 实现同一用户登陆,后登陆用户不能登陆成功,求思路
本帖最后由 cmcm2014 于 2014-3-24 11:05 编辑

我想实现一个同一用户成功登陆Login,例如用户sa登陆成功了,但是另外也有人用sa去登陆系统,那么后登陆的用户此时应该提示”此账号已登陆系统,请使用其他账号登陆“,实现这样的功能,暂时没有思路,求指导,谢谢。

作者: 白夜行    时间: 2014-3-23 10:02
你看看这样行不,在数据库里加一张表,用来记录用户的活动状态,如果登录则为true;在用户登录时加一个判断,若是要登录的用户的活动状态为true,那么就提示此账号已经登录;在用户退出系统或关闭系统的时候加个语句,把活动状态设为false;
作者: cmcm2014    时间: 2014-3-23 10:32
1.这么做好像是可以实现的,但是每次登陆 登出时都要对数据库进行操作,可能性能上差点把,
还有就是如果同时2个人一起用相同账号登陆,同时对数据库那一行数据进行操作会有问题吗,这点暂时还不太清楚,求指点!
2.你的这个方案,让我想到了应该是可以用XML来代替数据库的操作,这样应该会好点吧
作者: ♠Akechi♠    时间: 2014-3-23 15:45
登录时用AJAX请求判断如何?
作者: cmcm2014    时间: 2014-3-23 15:55
♠Akechi♠ 发表于 2014-3-23 15:45
登录时用AJAX请求判断如何?

能具体谈一下么?
作者: ♠Akechi♠    时间: 2014-3-23 16:10
cmcm2014 发表于 2014-3-23 15:55
能具体谈一下么?

Ajax做局部刷新用,但如果是管理系统那样的b/s架构了,建议还是从session和cookie着手,登录时,生成一个唯一的标识,然后和用户名关联。 标识保存到session或者cookie里面,用于下次访问。下次访问时,判断标识与用户名关联或者与用户Id关联的是否一样,如果不一样则判断重复登录了,本session自动注销。
作者: cmcm2014    时间: 2014-3-23 16:30
♠Akechi♠ 发表于 2014-3-23 16:10
Ajax做局部刷新用,但如果是管理系统那样的b/s架构了,建议还是从session和cookie着手,登录时,生成一个 ...

兄弟 谢谢咯 知道怎么做了:handshake
作者: ♠Akechi♠    时间: 2014-3-23 16:38
cmcm2014 发表于 2014-3-23 16:30
兄弟 谢谢咯 知道怎么做了

:handshake客气了兄弟




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2