php mysql 登录注销_laravel 实现用户登录注销并限制功能

1. 创建登录控制器

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

94dec0a00d2b93169dcf5056eb8563ad.png

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

php artisan make:model Model/Admin -m

db3e3061f63eef0461c8afefdcf1bd00.png

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

7f42de7d0f38b84ad647d3b5e0ff43a8.png

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

和密码(password).

d1e038d747003b5c6e8555b7b39473bb.png

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

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

a6248f87851aec665154dbd72df02642.png

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

d9c0c07ecb9ac21f1e529436ba8845fe.png

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

73d63472c0b9266ff72a1f54efc0816a.png

3.填充数据

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

填充,保证密码加密。

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

ad9a8015b556bd028079270e9e0075ea.png

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

37d5fca827e244e1b98facf8c5692165.png

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

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

dc0738380fd15e0a59f24563abea1651.png

4.用户登录配置

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

c722f5883685443f858949b9c52fc918.png

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

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

d612c9f995577d2f815a74bbc901c6c0.png

5.登录函数

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

$statue = Auth::guard('admin')->attempt([

'username'=>$request->input('username'),

'password'=>$request->input('password'),

]);

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

8a1d657ff6c0c2435140cfacfa65d9e2.png

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

30e6af61b3f509bca7a2623e541cb46d.png

6.限制页面权限

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

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

1628ebf7cc688a9d35db7d09b95da0fd.png

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

94d478a727fae9b1040602c7b47b5c6a.png

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

86890b05d747ef07e8b87c0dcaf4a5e8.png

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

990b13fb11eb52035df8bf3c167a2b60.png

7.注销

c203bf86fec614123bdedf1b7e824456.png

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值