php如何禁止同一账号多处登录?
作者:卡卷网发布时间:2025-01-09 18:40浏览数量:84次评论数量:0次
先说方法,其实很简单。
在用户表增加一个字段叫last_login_ip,每次用户登录成功后,把这个值修改成当前Ip,并存放到会话中。
当用户再次登录后,数据库中的last_login_ip发生变化,但是会话中的没有。这时候只需要判断两个地方的这个值一样不一样,就可以决定该会话是否可以继续登录还是登出。
当然last_login_ip的好处是同一台电脑上,不同的浏览器登录,也不会相互挤掉。如果换成一个随机串,就表示,不管是不是同台电脑,只要一个用户登录第二次,就会把之前的登录状态挤掉。
这个回答下面的码农水平是太低了,低到连别人的答案都不认看或是想当然。
ip只是作为一个随机串的一种,他的好处在于同一个ip下面,几乎都是“自己人”。面对自己人的情况下,减少登录同一个账号,注意是同一个账号,你至少也得知道密码,互相顶掉的情况。
当然,你觉得ip这种随机串还是无法满足你的需求,你就是想二次登录就挤掉前面的,那你就换成随机数,这个用ip的道理是一模一样,有什么好纠结的。连这个都理解不了,你评论个啥啊?
还有人说,下个人登录之前把之前的sessionid删除掉。这样不是说不行,只会增加整体方案的复杂度。
要是还是理解不了,那就是我错了,你对了。爱怎么写怎么写。
END
免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。
- 上一篇:为什么新华网不使用S?
- 下一篇:程序员每天会阅读哪些技术来提升自己?
相关推荐
最新文章
随机文章
广告位

你 发表评论:
欢迎