分享

php 实现账号不能同时登陆的方法分析【当其它地方登陆时,当前账号失效】

 tesla008 2020-03-09

本文实例讲述了php 实现账号不能同时登陆的方法。分享给大家供大家参考,具体如下:

解决的思路是每当用户登陆时我们必需记录当前的用户id和session_id,如果有人在其它地方用此账号登陆时,我们把此用户id对应的session_id的session文件删除,并重新记录当前的session_id。那么之前的用户就失效了。

login.php代码如下:

  index.php代码如下:

  db.php代码如下:

  

tb_login_state表结构如下:

  

如果是session存储方式不是文件,而是存在mysql,memcache,redis中,思路其实是一样的,都是把前一次的session_id保存。判断用户是否登陆过,如果登陆过就让上一次的session失效(删除session数据)。

(*通过设置session的过期时间和cookie的过期时间来让session失效是不严格的,最直接的方法是直接把session文件删除。)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多