2011-04-14 49 views
1

我正在使用表单身份验证将用户登录到我的网站上。唯一用户登录

但是如果有人试图在不同的机器上同时登录相同的细节会怎么样?有没有办法检查这个?

理想情况下,我想显示一条消息,第二次说,该用户帐户已登录..

感谢

回答

3

保持信息服务器端(已登录的用户列表)。然后,在每次登录时,检查是否已经在该列表中。

+0

不要忘记在登录时结束或销毁该帐户的所有竞争会话。 – 2011-04-14 10:18:54

+0

@ Timothy Groote,好点,否则用户可能无法登录,因为另一个“忘记”的会话打开别的地方。 – tzup 2011-04-14 10:22:30

+0

当你的意思是保持信息服务器端,你的意思是在一个会话?或db?因为我认为它不会通过将它与会话变量进行比较来工作... – user441365 2011-04-19 14:34:51

0

当曾经登录发生保存用户名和密码的值在会话中,然后在每次登录时检查会话中已登录的值,如果匹配显示消息并且不允许登录。

+0

我认为使用会话变量只有当用户试图在同一台机器上登录时才有效。我需要这个工作跨越多台机器。 – user441365 2011-04-19 14:38:59