-->

PHP资讯

您的当前位置:首页 > 资讯 > PHP模块

PHP实现单例登录

2020-11-05 13:54:02  来源:admin 点击:514

单例登录:意思是同一个用户,在同一时间只能同时存在一个。

实现大体思路:

用户表:

Id

Login_key

1.      用户在每次登录的时候,更新数据库的login_key,并存到session中

2.      全局文件中写入判断session和数据库的login_key做比较,失败则登录,并清空缓存

3.   本人在次登录的时候,他的login——key被修改,则上一个人的session不对了,就掉线

代码实现:

登陆代码:

//修改登录key

$is_login_key = makdSalt();//生成随机数

DB::table('user')->where('id',$id)->update(['login_key'=>$is_login_key]);

//保存用户信息到session

session('hh_login_key', $is_login_key);

全局代码

$login_key=DB::table('user')->where('id', session(‘userid'))->value('login_key');

        if(session('login_key') != $login_key){

            session('login_key', null);

            $this->error('您的账号在其他地方登录,您被迫强制下线!');

        }


相关文章更多 >

© 2024版权所有 水水网

电话:171780793