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 相关文章推荐
substr()函数中文版
Oct 09 PHP
生成静态页面的PHP类
Nov 25 PHP
PHP大批量插入数据库的3种方法和速度对比
Jul 08 PHP
11个PHPer必须要了解的编程规范
Sep 22 PHP
PHP函数实现分页含文本分页和数字分页
Oct 23 PHP
php中heredoc与nowdoc介绍
Dec 25 PHP
php二维数组合并及去重复的方法
Mar 04 PHP
PHP安全上传图片的方法
Mar 21 PHP
ThinkPHP表单数据智能写入create方法实例分析
Sep 27 PHP
thinkPHP分组后模板无法加载问题解决方法
Jul 12 PHP
php实现将二维关联数组转换成字符串的方法详解
Jul 31 PHP
php处理多图上传压缩代码功能
Jun 13 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
超人钢铁侠联手合作?美漫作家呼吁DC漫威合作联动以抵抗疫情
2020/04/09 欧美动漫
探讨Smarty中如何获取数组的长度以及smarty调用php函数的详解
2013/06/20 PHP
PHP实现数组array转换成xml的方法
2016/07/19 PHP
Yii2 加载css、js 载静态资源的方法
2017/03/10 PHP
基于php编程规范(详解)
2017/08/17 PHP
JavaScript学习笔记之Cookie对象
2015/01/22 Javascript
Angularjs---项目搭建图文教程
2016/07/08 Javascript
Bootstrap3 多选和单选框(checkbox)
2016/12/29 Javascript
ionic3 懒加载
2017/08/16 Javascript
浅谈js中的this问题
2017/08/31 Javascript
vue-router 路由基础的详解
2017/10/17 Javascript
js中apply与call简单用法详解
2017/11/06 Javascript
React Native中NavigatorIOS组件的简单使用详解
2018/01/27 Javascript
Vue-router的使用和出现空白页,路由对象属性详解
2018/09/03 Javascript
浅谈express.js框架中间件(middleware)
2019/04/07 Javascript
JS正则表达式验证端口范围(0-65535)
2020/01/06 Javascript
详细分析Node.js 模块系统
2020/06/28 Javascript
Json实现传值到后台代码实例
2020/06/30 Javascript
[58:25]VP vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
[01:07:46]完美世界DOTA2联赛循环赛 Magma vs IO BO2第二场 11.01
2020/11/02 DOTA
Python中的ceil()方法使用教程
2015/05/14 Python
老生常谈进程线程协程那些事儿
2017/07/24 Python
简单谈谈python基本数据类型
2018/09/26 Python
python3学生名片管理v2.0版
2018/11/29 Python
Python编程中类与类的关系详解
2019/08/08 Python
python网络爬虫 CrawlSpider使用详解
2019/09/27 Python
H5 meta小结(前端必看篇)
2016/08/24 HTML / CSS
浅谈移动端网页图片预加载方案
2018/11/05 HTML / CSS
夏威夷灵感服装及配饰:Reyn Spooner
2018/09/18 全球购物
将n个数按输入顺序的逆序排列,用函数实现
2012/11/14 面试题
机修工工作职责
2014/02/21 职场文书
春节联欢晚会主持词
2014/03/24 职场文书
2014年法制宣传日活动方案
2014/11/02 职场文书
刑事附带民事上诉状
2015/05/23 职场文书
2016年三八红旗手先进事迹材料
2016/02/26 职场文书
CSS基础详解
2021/10/16 HTML / CSS