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 visitFile()遍历指定文件夹函数
Aug 21 PHP
PHP学习笔记之二
Jan 17 PHP
PHP错误抑制符(@)导致引用传参失败Bug的分析
May 02 PHP
PHP安全配置详细说明
Sep 26 PHP
使用php+Ajax实现唯一校验实现代码[简单应用]
Nov 29 PHP
php中file_get_content 和curl以及fopen 效率分析
Sep 19 PHP
php保存任意网络图片到服务器的方法
Apr 14 PHP
php实现微信公众平台账号自定义菜单类
Oct 11 PHP
session 加入redis的实现代码
Jul 15 PHP
常用PHP数组排序函数归纳
Aug 08 PHP
php+mysql开发的最简单在线题库(在线做题系统)完整案例
Mar 30 PHP
PHP序列化和反序列化深度剖析实例讲解
Dec 29 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
从PHP $_SERVER相关参数判断是否支持Rewrite模块
2013/09/26 PHP
PHP实现中文圆形印章特效
2015/06/19 PHP
LINUX下PHP程序实现WORD文件转化为PDF文件的方法
2016/05/13 PHP
jquery创建一个ajax关键词数据搜索实现思路
2013/02/26 Javascript
js,jquery滚动/跳转页面到指定位置的实现思路
2014/06/03 Javascript
JS制作手机端自适应缩放显示
2015/06/11 Javascript
JS中Eval解析JSON字符串的一个小问题
2016/02/21 Javascript
JavaScript代码实现图片循环滚动效果
2020/03/19 Javascript
JS控制文本域只读或可写属性的方法
2016/06/24 Javascript
Three.js学习之几何形状
2016/08/01 Javascript
利用React-router+Webpack快速构建react程序
2016/10/27 Javascript
老生常谈原生JS执行环境与作用域
2016/11/22 Javascript
浅谈JavaScript的innerWidth与innerHeight
2017/10/12 Javascript
JS实现获取汉字首字母拼音、全拼音及混拼音的方法
2017/11/14 Javascript
nodeJS微信分享
2017/12/20 NodeJs
js和jQuery以及easyui实现对下拉框的指定赋值方法
2018/01/23 jQuery
Bootstrap table中toolbar新增条件查询及refresh参数使用方法
2018/05/18 Javascript
js replace 全局替换的操作方法
2018/06/12 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
Vue开发之watch监听数组、对象、变量操作分析
2019/04/25 Javascript
vue项目中常见问题及解决方案(推荐)
2019/10/21 Javascript
nodeJs项目在阿里云的简单部署
2020/11/27 NodeJs
JavaScript函数柯里化实现原理及过程
2020/12/02 Javascript
[25:45]2018DOTA2亚洲邀请赛4.5SOLO赛 Sylar vs Paparazi
2018/04/06 DOTA
使用Python编写提取日志中的中文的脚本的方法
2015/04/30 Python
Python基于csv模块实现读取与写入csv数据的方法
2018/01/18 Python
2020最新pycharm汉化安装(python工程狮亲测有效)
2020/04/26 Python
利用Python实现Json序列化库的方法步骤
2020/09/09 Python
python爬取豆瓣电影排行榜(requests)的示例代码
2021/02/18 Python
小学庆六一活动总结
2014/08/28 职场文书
支部书记四风对照材料
2014/08/28 职场文书
2015年学校办公室工作总结
2015/05/26 职场文书
高考升学宴主持词
2019/06/21 职场文书
单身狗福利?Python爬取某婚恋网征婚数据
2021/06/03 Python
SpringBoot连接MySQL获取数据写后端接口的操作方法
2021/11/02 MySQL
python 闭包函数详细介绍
2022/04/19 Python