Foxtable(狐表)用户栏目专家坐堂 → [讨论]自定义用户登录,如何限制用户不能重复同时登录多个客户端


  共有13093人关注过本帖树形打印复制链接

主题:[讨论]自定义用户登录,如何限制用户不能重复同时登录多个客户端

帅哥哟,离线,有人找我吗?
hanxuntx
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2609 积分:16926 威望:0 精华:11 注册:2011/9/20 16:13:00
[讨论]自定义用户登录,如何限制用户不能重复同时登录多个客户端  发帖心情 Post By:2011/12/1 17:21:00 [只看该作者]

就像QQ一样,你的账号在别处登录了,你现在的账号就被踢下线了。

如何实现,大家发表下思路。

[此贴子已经被作者于2011-12-1 17:21:40编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/12/1 17:27:00 [只看该作者]

后台的用户表再加一个数值列,每次登录,这个列加1,退出这个列减1。

登录的时候,检查这个列的值,如果大于0,就提示此用户已经登录。

 

因为可能存在意外退出的问题,所以还得有个清除指定用户计数的功能,只有开发者或管理员才能清除计数。


 回到顶部
帅哥哟,离线,有人找我吗?
sgs
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:365 积分:2693 威望:0 精华:1 注册:2011/11/25 7:55:00
  发帖心情 Post By:2011/12/1 17:42:00 [只看该作者]

增加一个在线状态列,就OK了,登录前检测该用户是否在线就行了

 

如果要踢下线,用appendload应该是个思路,给对方发送提示,然后考虑强行退出程序


 回到顶部
帅哥哟,离线,有人找我吗?
hanxuntx
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2609 积分:16926 威望:0 精华:11 注册:2011/9/20 16:13:00
  发帖心情 Post By:2011/12/1 17:43:00 [只看该作者]

狐爸,我现在的设计正如您所说的一样,我是每次记录用户登录时间,退出清空。

但是意外是经常发生的。总不能老是让管理员来解锁吧。

 

现在的问题是,

不需要人工干预,如何识别意外退出。

或者,如何确定当前用户是否已经在别处登录

 


 

 

[此贴子已经被作者于2011-12-4 9:05:56编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
hanxuntx
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2609 积分:16926 威望:0 精华:11 注册:2011/9/20 16:13:00
  发帖心情 Post By:2011/12/4 9:06:00 [只看该作者]

顶起

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/12/4 9:18:00 [只看该作者]

呵呵,在上述基础之上,再强化一下: 在线的用户,每隔60秒向后台写入当前时间,表示:我在线呢。

登录的时候,同时判断两个条件,即使有意外退出,也最多锁死60秒。

 


 回到顶部
帅哥哟,离线,有人找我吗?
hanxuntx
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2609 积分:16926 威望:0 精华:11 注册:2011/9/20 16:13:00
  发帖心情 Post By:2011/12/4 9:29:00 [只看该作者]

呵呵。
能不能改成,当前登录的用户询问;“你在不在线?”
回应了表示在线,几秒不回应表示不在线


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/12/4 9:33:00 [只看该作者]

这个不好实现。

6楼的方法,其实更加实用,你可以根据需要调整时间的长短,例如20秒。


 回到顶部
帅哥哟,离线,有人找我吗?
pyh6918
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1128 积分:11035 威望:0 精华:2 注册:2008/9/1 10:45:00
  发帖心情 Post By:2011/12/4 16:23:00 [只看该作者]

以下是引用狐狸爸爸在2011-12-4 9:18:00的发言:

呵呵,在上述基础之上,再强化一下: 在线的用户,每隔60秒向后台写入当前时间,表示:我在线呢。

登录的时候,同时判断两个条件,即使有意外退出,也最多锁死60秒。

 

每隔60秒向后台写入当前时间,这个时间应该是服务器时间吧,如果是本机时间存在人为调整。

 

 


 回到顶部
帅哥,在线噢!
程兴刚
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7236 积分:40591 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/12/4 22:47:00 [只看该作者]

60秒还不够您调整时间、打开系统!

 

不过应该有更好的办法!


 回到顶部
总数 13 1 2 下一页