问题列表分类: PHPphp怎么实现一个帐号,如果第二个人登录,直接顶下去第一个人?
0
头像php老学渣 asked 2年 ago

昨天面试,问我怎么实现一个帐号,如果第二个人登录,直接顶下去第一个人?我虽然知道它和QQ一样,但是QQ做得多么的复杂,我们简单一点就行了!我直接不知道如何下手?

1 Answers
0
头像付杰 管理员 answered 2年 ago

代码我就不给你上了,给你说说原理吧!

第一个用户登陆,输入用户和密码,并随机加密再分一个token值,存入数据库;进入用户中心除了要判断cookie得到用户,还要判断token值是否一样?

第二个用户登陆,同样也是输入用户和密码,并再随机加密分一个token值,同时修改数据库同一个用户的token值;

这样对于第一个用户来说,它的token肯定发生了变化,既然变化了,肯定是用户退出!

不知道你明白了吗?当然当中的逻辑你可以自己用PHP代码去处理;按照此原理走肯定不会出错;

如果你想token值发生了变化,第一个用户就是退出状态,需要实时监听,你可以用PHP+ajax局部定时刷新来实现;这种做法有点浪费资源;