laravel 实现用户登录注销并限制功能


Posted in PHP onOctober 24, 2019

1. 创建登录控制器

在项目根目录输入: php artisan make:controller Admin/LoginController

laravel 实现用户登录注销并限制功能

2.创建用户模块 以及数据库

php artisan make:model Model/Admin -m

laravel 实现用户登录注销并限制功能

运行之后 项目中会新增两个PHP文件

laravel 实现用户登录注销并限制功能

新创建了admins用户表,此用户表默认新建中只有主键,创建时间,编辑时间。我们接下来新加两个字段 用户名(username)

和密码(password).

laravel 实现用户登录注销并限制功能

在up函数中加上这两个字段,后面可以按自己的需求添加属性。

laravel默认的字符集是utf8mb4,新增的数据库字段会有这个字符集,想要改成utf8 可以直接修改datebase

laravel 实现用户登录注销并限制功能

接下来运行数据迁移命令 php artisan migrate 来创建数据表

laravel 实现用户登录注销并限制功能

运行之后数据库中新增了admins表

laravel 实现用户登录注销并限制功能

3.填充数据

因为还没有做注册所以我们利用tinker来表中填充数据,如果已经做了注册功能就不用坐下面的步骤了,也可以直接运行sql,直接

填充,保证密码加密。

首先在配置中添加想要新增的数据。在datebase/factories/

laravel 实现用户登录注销并限制功能

define方法里面写自己的用户模块的命名,里面加上默认密码。

laravel 实现用户登录注销并限制功能

之后运行php artisan tinker 命令 里面输入 factory(模块命名,条数);

运行之后数据库中新增了三条数据,实例中密码都是admin。

laravel 实现用户登录注销并限制功能

4.用户登录配置

首先在config/auth.php中添加配置,框架默认都是走的自带的User模块。

laravel 实现用户登录注销并限制功能

加上图中的两个配置,命名按照自己的模块名字来命名。

修改模块继承函数跟系统的自带的User.php一样就可以了。

laravel 实现用户登录注销并限制功能

5.登录函数

这里先略过前段页面的表单的写法以及表单提交的方式,直接获取数据的函数来写。

$statue = Auth::guard('admin')->attempt([
   'username'=>$request->input('username'),
   'password'=>$request->input('password'),
   
  ]);

以上就是登录函数,guard函数中写入自己在auth.php配置中写的命名。指定用户登录的表。

laravel 实现用户登录注销并限制功能

在前段页面中获取的时候也要指定命名。

laravel 实现用户登录注销并限制功能

6.限制页面权限

后台登陆首页之前判断是否登陆,如果没有登录则跳转到登录页。

首先做一个中间件,让每个页面控制器运行之前先运行中间件,我们在中间件中写一些页面是否有权限访问的动作。

laravel 实现用户登录注销并限制功能

运行之后里面填写验证指定的表用户是否登陆

laravel 实现用户登录注销并限制功能

之后我们在kernel.php中添加中间件

laravel 实现用户登录注销并限制功能

我们在登录的控制器中调用,并指定哪个函数不需要限制。

laravel 实现用户登录注销并限制功能

7.注销

laravel 实现用户登录注销并限制功能

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

PHP 相关文章推荐
新手配置 PHP 调试环境(IIS+PHP+MYSQL)
Jan 10 PHP
PHP判断搜索引擎蜘蛛并自动记忆到文件的代码
Feb 04 PHP
PHP ? EasyUI DataGrid 资料取的方式介绍
Nov 07 PHP
Zend studio文件注释模板设置方法
Sep 29 PHP
PHP中Memcache操作类及用法实例
Dec 12 PHP
smarty内置函数{loteral}、{ldelim}和{rdelim}用法实例
Jan 22 PHP
php+mysql实现无限级分类
Nov 11 PHP
深入解析PHP的Yii框架中的event事件机制
Mar 17 PHP
php提交过来的数据生成为txt文件
Apr 28 PHP
PHP实现RTX发送消息提醒的实例代码
Jan 03 PHP
Laravel获取所有的数据库表及结构的方法
Oct 10 PHP
php实现JWT验证的实例教程
Nov 26 PHP
Laravel 5.5 实现禁用用户注册示例
Oct 24 #PHP
laravel5.5安装jwt-auth 生成token令牌的示例
Oct 24 #PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
Oct 24 #PHP
Laravel (Lumen) 解决JWT-Auth刷新token的问题
Oct 24 #PHP
laravel5.1 ajax post 传值_token示例
Oct 24 #PHP
laravel 5.5 关闭token的3种实现方式
Oct 24 #PHP
Thinkphp 3.2框架使用Redis的方法详解
Oct 24 #PHP
You might like
我的论坛源代码(八)
2006/10/09 PHP
PHP 开源框架22个简单简介
2009/08/24 PHP
php实现利用phpexcel导出数据
2013/08/24 PHP
Apache启动报错No space left on device: AH00023该怎么解决
2015/10/16 PHP
js下获得客户端操作系统的函数代码(1:vista,2:windows7,3:2000,4:xp,5:2003,6:2008)
2011/10/31 Javascript
JQuery实现表格中相同单元格合并示例代码
2013/06/26 Javascript
学习JavaScript设计模式之责任链模式
2016/01/18 Javascript
JS在onclientclick里如何控制onclick的执行
2016/05/30 Javascript
js获取元素的外链样式的简单实现方法
2016/06/06 Javascript
浅谈$('div a') 与$('div>a')的区别
2016/07/18 Javascript
JS实现改变HTML上文字颜色和内容的方法
2016/12/30 Javascript
layui使用button按钮 点击出现弹层 弹层中加载表单的实例
2019/09/04 Javascript
node.js基于dgram数据报模块创建UDP服务器和客户端操作示例
2020/02/12 Javascript
vue学习笔记之给组件绑定原生事件操作示例
2020/02/27 Javascript
Vue页面手动刷新,实现导航栏激活项还原到初始状态
2020/08/06 Javascript
Python urllib模块urlopen()与urlretrieve()详解
2013/11/01 Python
Python写的Tkinter程序屏幕居中方法
2015/03/10 Python
python中requests模块的使用方法
2015/04/08 Python
Python实现各种排序算法的代码示例总结
2015/12/11 Python
浅谈python中set使用
2016/06/30 Python
python实现猜数字小游戏
2020/03/24 Python
pygame游戏之旅 添加游戏界面按键图形
2018/11/20 Python
浅谈pycharm出现卡顿的解决方法
2018/12/03 Python
python 杀死自身进程的实现方法
2019/07/01 Python
python框架django项目部署相关知识详解
2019/11/04 Python
Python for循环通过序列索引迭代过程解析
2020/02/07 Python
Python 如何创建一个线程池
2020/07/28 Python
css3实现椭圆轨迹旋转的示例代码
2018/10/29 HTML / CSS
CSS Houdini实现动态波浪纹效果
2019/07/30 HTML / CSS
Linux开机引导的步骤是什么
2015/10/19 面试题
毕业留言寄语大全
2014/04/10 职场文书
学校领导班子成员查摆问题及整改措施
2014/10/28 职场文书
2015年大学教师工作总结
2015/05/20 职场文书
在Spring-Boot中如何使用@Value注解注入集合类
2021/08/02 Java/Android
Redis 操作多个数据库的配置的方法实现
2022/03/23 Redis
宝塔更新Python及Flask项目的部署
2022/04/11 Python