laravel 5.3 单用户登录简单实现方法


Posted in PHP onOctober 14, 2019

需求描述

当前用户只能在一个地方登录,即同一账号不能再2个以上窗口登录,后登录者踢出前登录者。

设计思路

在用户数据表中新增1个字段,记录当前登录用的session_id,当用户登录的时候把session_id存储到数据库中,然后在中间件认证里加判断,判断当前用户sesson_id是否和数据库中的session_id相等,如果相等继续向下执行,反之注销登录。

具体实现

1.首先在用户表中新增字段last_session,类型CHAR 40长度

2.在AuthController 控制器中实现父类方法authenticated方法,目的保存当前用户的session_id到数据库中。

protected function authenticated($request,$user){
    $user->last_session = Session::getId();
    $user->save();
    return redirect()->intended($this->redirectPath());
  }

3.在Authenticate中间中加入判断代码

if(Session::getId() != Auth::guard($guard)->user()->last_session){
      return redirect('/admin/logout');}

也可以在判断代码块中加入其它,如提示当前账号在其它地方登录,然后注销当前登录等。

以上这篇laravel 5.3 单用户登录简单实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
图片存储与浏览一例(Linux+Apache+PHP+MySQL)
Oct 09 PHP
PHP实现把数字ID转字母ID
Aug 12 PHP
使用GDB调试PHP代码,解决PHP代码死循环问题
Mar 02 PHP
PHP实现WebService的简单示例和实现步骤
Mar 27 PHP
PHP结合jQuery插件ajaxFileUpload实现异步上传文件实例
Aug 17 PHP
PHP数组编码gbk与utf8互相转换的两种方法
Sep 01 PHP
深入解析PHP中SESSION反序列化机制
Mar 01 PHP
Mac下php 5升级到php 7的步骤详解
Apr 26 PHP
php实现在线考试系统【附源码】
Sep 18 PHP
php探针使用原理和技巧讲解
Sep 17 PHP
laravel 解决Validator使用中出现的问题
Oct 25 PHP
Yii实现微信公众号场景二维码的方法实例
Aug 30 PHP
在laravel5.2中实现点击用户头像更改头像的方法
Oct 14 #PHP
Yii框架数据库查询、增加、删除操作示例
Oct 14 #PHP
laravel框架上传图片实现实时预览功能
Oct 14 #PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
Oct 14 #PHP
yii框架数据库关联查询操作示例
Oct 14 #PHP
laravel实现上传图片并在页面显示的例子
Oct 14 #PHP
Thinkphp5.0 框架的请求方式与响应方式分析
Oct 14 #PHP
You might like
PHP include_path设置技巧分享
2011/07/03 PHP
实例详解PHP中html word 互转的方法
2016/01/28 PHP
Yii2中hasOne、hasMany及多对多关联查询的用法详解
2017/02/15 PHP
thinkphp3.2实现跨控制器调用其他模块的方法
2017/03/14 PHP
细品javascript 寻址,闭包,对象模型和相关问题
2009/04/27 Javascript
javascript CSS画图之基础篇
2009/07/29 Javascript
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
2010/10/14 Javascript
验证码按回车不变解决方法
2013/03/29 Javascript
jQuery操作cookie方法实例教程
2014/11/25 Javascript
浅析AngularJS Filter用法
2015/12/28 Javascript
javascript事件委托的用法及其好处简析
2016/04/04 Javascript
JavaScript的==运算详解
2016/07/20 Javascript
AngularJS表达式讲解及示例代码
2016/08/16 Javascript
jQuery层次选择器用法示例
2016/09/09 Javascript
Angular开发者指南之入门介绍
2017/03/05 Javascript
JavaScript遍历数组的三种方法map、forEach与filter实例详解
2019/02/27 Javascript
通过实例解析javascript Date对象属性及方法
2020/11/04 Javascript
Python中MySQLdb和torndb模块对MySQL的断连问题处理
2015/11/09 Python
Python自动化运维和部署项目工具Fabric使用实例
2016/09/18 Python
python一键升级所有pip package的方法
2017/01/16 Python
JS设计模式之责任链模式实例详解
2018/02/03 Python
有关Python的22个编程技巧
2018/08/29 Python
Python猴子补丁Monkey Patch用法实例解析
2020/03/23 Python
澳大利亚波西米亚风情网上商店:Czarina
2019/03/18 全球购物
英语系本科生个人求职信
2013/09/21 职场文书
总务岗位职责
2013/11/19 职场文书
外贸销售员求职的自我评价
2013/11/23 职场文书
车工岗位职责
2013/11/26 职场文书
乡镇干部先进事迹材料
2014/02/03 职场文书
《临死前的严监生》教学反思
2014/02/13 职场文书
普通大学毕业生自荐信范文
2014/02/23 职场文书
股东合作协议书
2014/04/14 职场文书
单位委托书怎么写
2014/08/02 职场文书
上课迟到检讨书300字
2014/10/15 职场文书
法律意见书范文
2015/06/04 职场文书
MySQL详细讲解变量variables的用法
2022/06/21 MySQL