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 相关文章推荐
获得Google PR值的PHP代码
Jan 28 PHP
抓取YAHOO股票报价的类
May 15 PHP
php去除重复字的实现代码
Sep 16 PHP
PHP禁止页面缓存的代码
Oct 23 PHP
PHP定时执行计划任务的多种方法小结
Dec 19 PHP
php无限分类且支持输出树状图的详细介绍
Jun 19 PHP
深入解析PHP 5.3.x 的strtotime() 时区设定 警告信息修复
Aug 05 PHP
如何在旧的PHP系统中使用PHP 5.3之后的库
Dec 02 PHP
php分页查询mysql结果的base64处理方法示例
May 18 PHP
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
Sep 02 PHP
Laravel 不同生产环境服务器的判断实践
Oct 15 PHP
WordPress伪静态规则设置代码实例
Dec 10 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实现WEB动态网页静态
2006/10/09 PHP
ajax+php打造进度条 readyState各状态
2010/03/20 PHP
php编程实现获取excel文档内容的代码实例
2011/06/28 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(八)
2014/06/23 PHP
动态的改变IFrame的高度实现IFrame自动伸展适应高度
2012/12/28 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
2013/03/04 Javascript
javascript设计模式之工厂模式示例讲解
2014/03/04 Javascript
js控制文本框只输入数字和小数点的方法
2015/03/10 Javascript
javascript中sort() 方法使用详解
2015/08/30 Javascript
jQuery实现的经典竖向伸缩菜单效果代码
2015/09/24 Javascript
JavaScript编写Chrome扩展实现与浏览器的交互及时间通知
2016/05/16 Javascript
使用DeviceOne实现微信小程序功能
2016/12/29 Javascript
jQuery 开发之EasyUI 添加数据的实例
2017/09/26 jQuery
Bootstrap3.3.7导航栏下拉菜单鼠标滑过展开效果
2017/10/31 Javascript
vue2 router 动态传参,多个参数的实例
2017/11/10 Javascript
微信小程序实现的贪吃蛇游戏【附源码下载】
2018/01/03 Javascript
Vue 页面切换效果之 BubbleTransition(推荐)
2018/04/08 Javascript
移动端图片上传旋转、压缩问题的方法
2018/10/16 Javascript
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
Python中%r和%s的详解及区别
2017/03/16 Python
Django1.9 加载通过ImageField上传的图片方法
2018/05/25 Python
Python解决走迷宫问题算法示例
2018/07/27 Python
python 多线程将大文件分开下载后在合并的实例
2018/11/09 Python
Python利用heapq实现一个优先级队列的方法
2019/02/03 Python
Python实现带下标索引的遍历操作示例
2019/05/30 Python
浅谈Python中re.match()和re.search()的使用及区别
2020/04/14 Python
Python计算信息熵实例
2020/06/18 Python
纯CSS实现颜色渐变效果(包含环形渐变、线性渐变、彩虹效果等)
2014/05/07 HTML / CSS
挪威手表购物网站:Klokker
2016/09/19 全球购物
进程的查看和调度分别使用什么命令
2013/12/14 面试题
我的大学生活职业生涯规划
2014/01/02 职场文书
茶叶生产计划书
2014/01/10 职场文书
给校长的建议书600字
2014/05/15 职场文书
干货:如何写好工作计划!
2019/05/17 职场文书
2019年家电促销广告语集锦
2019/10/21 职场文书
nginx反向代理时如何保持长连接
2021/03/31 Servers