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

 更新时间:2019年10月24日 17:05:19   作者:侯府娘子  
今天小编就为大家分享一篇laravel 实现用户登录注销并限制功能,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

1. 创建登录控制器

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

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

php artisan make:model Model/Admin -m

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

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

和密码(password).

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

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

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

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

3.填充数据

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

填充,保证密码加密。

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

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

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

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

4.用户登录配置

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

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

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

5.登录函数

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

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

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

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

6.限制页面权限

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

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

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

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

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

7.注销

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

相关文章

  • 浅析get与post的一些特殊情况

    浅析get与post的一些特殊情况

    这篇文章主要介绍了get与post的一些特殊情况,需要的朋友可以参考下
    2014-07-07
  • yii2.0之GridView自定义按钮和链接用法

    yii2.0之GridView自定义按钮和链接用法

    这篇文章主要介绍了yii2.0之GridView自定义按钮和链接用法,是非常实用的使用GridView进行表单操作技巧,需要的朋友可以参考下
    2014-12-12
  • Smarty局部缓存的几种方法简介

    Smarty局部缓存的几种方法简介

    很多时候我们在用smarty时,并不希望缓存整个页面,例如天气、股票等这类即时更新的信息。那么我们可以让其不缓存,这篇文章主要介绍了Smarty局部缓存方法,需要的朋友可以参考下
    2014-06-06
  • PHP date()格式MySQL中插入datetime方法

    PHP date()格式MySQL中插入datetime方法

    在本篇文章里小编给大家分享了关于PHP date()格式MySQL中插入datetime方法,有需要的朋友们学习下。
    2019-01-01
  • thinkphp5上传图片及生成缩略图公共方法(分享)

    thinkphp5上传图片及生成缩略图公共方法(分享)

    下面小编就为大家分享一篇thinkphp5上传图片及生成缩略图公共方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • 最新版本PHP 7 vs HHVM 多角度比较

    最新版本PHP 7 vs HHVM 多角度比较

    PHP 7 是 PHP 社区对 HHVM 的回应。PHP 7 发布的预览版本号称比之前的 PHP 5 的性能要提升100%。不过,PHP 还有一个竞争对手 HHVM (HipHop Virtual Machine) 一个运行 PHP 代码的虚拟工具。二者直接的比较正在升温,那么让我们来看一下他们直接的性能对比吧
    2016-02-02
  • PHP+Redis事务解决高并发下商品超卖问题(推荐)

    PHP+Redis事务解决高并发下商品超卖问题(推荐)

    这篇文章主要介绍了PHP+Redis事务解决高并发下商品超卖问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • windows中为php安装mongodb与memcache

    windows中为php安装mongodb与memcache

    这篇文章主要介绍了windows中为php安装mongodb与memcache的方法,十分的详尽,需要的朋友可以参考下
    2015-01-01
  • 详解PHP使用日期时间处理器Carbon人性化显示时间

    详解PHP使用日期时间处理器Carbon人性化显示时间

    本篇文章主要介绍了详解PHP使用日期时间处理器Carbon人性化显示时间,具有一定的参考价值,有兴趣的可以了解一下
    2017-08-08
  • php中的strpos使用示例

    php中的strpos使用示例

    strpos()函数返回字符串在另一个字符串中第一次出现的位置。如果没有找到该字符串,则返回 false,下面看示例使用方法
    2014-02-02

最新评论