先上图,看个大概:



一般的原则就是,后一个用户登录时会把前一个用户踢下线。


在用户首次登录时,我们会把用户的sessionid保存到数据库,这个是用户的唯一标识。方便后边操作。

用户只有在登录时才会和数据库中的phpsessid进行对比,如果不同,则更新数据库中的phpsessionid为当前浏览器的phpsessionid,这样后登录的用户就把前边登录的用户给踢下线了。

但是前边的用户怎么知道自己被踢下线了?

我使用的Yii框架,在YII框架中有一个filters()这样一个方法。在每个控制器中都存在该方法,我们可以在这个方法中,让当前用户的phpsessionid与数据库中的phpsessionid进行验证,当发现phpsessionid不同时,我们就清除当前浏览器的phpsessionid,并退出网站,提醒用户当前帐号在其他地方登陆。

最新文章

  1. AxureRp 打开SVN上的团队项目
  2. ssh连接失败,排错经验
  3. Palindrome Linked List
  4. css3 弹框功能样式
  5. jQuery点缩略图显示大图片
  6. html object元素
  7. sql中select语句的逻辑执行顺序
  8. jersery+jetty嵌入式restful的框架开发
  9. git 本地项目推到远程仓库
  10. SpringBoot修改Redis序列化方式
  11. 【oracle】ORA-02289: sequence does not exist
  12. C#HTTP请求之POST请求和GET请求
  13. 可空类型(Nullable)
  14. G - Rabbit and Grass
  15. docker的容器和镜像的差别
  16. 如何快速成为一名Linux运维工程师
  17. maven入门安装及HelloWorld实现
  18. Linux系统磁盘满解决方案
  19. 用VS2012不能打开VS2010的项目
  20. top command-linux下用top命令查看cpu利用率超过100%

热门文章

  1. 百度UEditor编辑器关闭抓取远程图片功能(默认开启)
  2. LNMP环境出现”504 gateway time-out”错误的解决方案
  3. c# 菜单无限极分类-利用递归
  4. Postgres的用户认证
  5. Android 操作手机内置存储卡中的文件
  6. 头文件intrins.h
  7. 《Programming WPF》翻译 第5章 3.命名属性
  8. 可变参数列表-Java SE5新特性(转)
  9. <转载>僵尸进程
  10. Linux用户管理(笔记)