laravel 實現(xiàn)用戶登錄注銷并限制功能
1. 創(chuàng)建登錄控制器
在項目根目錄輸入: php artisan make:controller Admin/LoginController

2.創(chuàng)建用戶模塊 以及數(shù)據(jù)庫
php artisan make:model Model/Admin -m

運行之后 項目中會新增兩個PHP文件

新創(chuàng)建了admins用戶表,此用戶表默認(rèn)新建中只有主鍵,創(chuàng)建時間,編輯時間。我們接下來新加兩個字段 用戶名(username)
和密碼(password).

在up函數(shù)中加上這兩個字段,后面可以按自己的需求添加屬性。
laravel默認(rèn)的字符集是utf8mb4,新增的數(shù)據(jù)庫字段會有這個字符集,想要改成utf8 可以直接修改datebase

接下來運行數(shù)據(jù)遷移命令 php artisan migrate 來創(chuàng)建數(shù)據(jù)表

運行之后數(shù)據(jù)庫中新增了admins表

3.填充數(shù)據(jù)
因為還沒有做注冊所以我們利用tinker來表中填充數(shù)據(jù),如果已經(jīng)做了注冊功能就不用坐下面的步驟了,也可以直接運行sql,直接
填充,保證密碼加密。
首先在配置中添加想要新增的數(shù)據(jù)。在datebase/factories/

define方法里面寫自己的用戶模塊的命名,里面加上默認(rèn)密碼。

之后運行php artisan tinker 命令 里面輸入 factory(模塊命名,條數(shù));
運行之后數(shù)據(jù)庫中新增了三條數(shù)據(jù),實例中密碼都是admin。

4.用戶登錄配置
首先在config/auth.php中添加配置,框架默認(rèn)都是走的自帶的User模塊。

加上圖中的兩個配置,命名按照自己的模塊名字來命名。
修改模塊繼承函數(shù)跟系統(tǒng)的自帶的User.php一樣就可以了。

5.登錄函數(shù)
這里先略過前段頁面的表單的寫法以及表單提交的方式,直接獲取數(shù)據(jù)的函數(shù)來寫。
$statue = Auth::guard('admin')->attempt([
'username'=>$request->input('username'),
'password'=>$request->input('password'),
]);
以上就是登錄函數(shù),guard函數(shù)中寫入自己在auth.php配置中寫的命名。指定用戶登錄的表。

在前段頁面中獲取的時候也要指定命名。

6.限制頁面權(quán)限
后臺登陸首頁之前判斷是否登陸,如果沒有登錄則跳轉(zhuǎn)到登錄頁。
首先做一個中間件,讓每個頁面控制器運行之前先運行中間件,我們在中間件中寫一些頁面是否有權(quán)限訪問的動作。

運行之后里面填寫驗證指定的表用戶是否登陸

之后我們在kernel.php中添加中間件

我們在登錄的控制器中調(diào)用,并指定哪個函數(shù)不需要限制。

7.注銷

以上這篇laravel 實現(xiàn)用戶登錄注銷并限制功能就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
CentOS下搭建PHP環(huán)境與WordPress博客程序的全流程總結(jié)
這篇文章主要介紹了CentOS下搭建PHP環(huán)境與WordPress博客程序的全流程總結(jié),這里我們以Apache服務(wù)器程序和MySQL數(shù)據(jù)庫程序為例進行講解,需要的朋友可以參考下2016-05-05
基于thinkPHP實現(xiàn)的微信自定義分享功能示例
這篇文章主要介紹了基于thinkPHP實現(xiàn)的微信自定義分享功能,結(jié)合實例形式分析了thinkPHP調(diào)用微信接口實現(xiàn)自定義分享功能的相關(guān)操作技巧,需要的朋友可以參考下2016-09-09
PHP中關(guān)于php.ini參數(shù)優(yōu)化詳解
在本篇文章里小編給大家整理的是關(guān)于PHP引擎php.ini參數(shù)優(yōu)化的相關(guān)知識點,有興趣的朋友們可以學(xué)習(xí)下。2020-02-02
百度地圖經(jīng)緯度轉(zhuǎn)換到騰訊地圖/Google 對應(yīng)的經(jīng)緯度
本篇文章主要給大家介紹百度地圖經(jīng)緯度轉(zhuǎn)換到騰訊地圖/Google 對應(yīng)的經(jīng)緯度.需要的朋友可以參考下2015-08-08
laravel實現(xiàn)Auth認(rèn)證,登錄、注冊后的頁面回跳方法
今天小編就為大家分享一篇laravel實現(xiàn)Auth認(rèn)證,登錄、注冊后的頁面回跳方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
zen cart實現(xiàn)訂單中增加paypal中預(yù)留電話的方法
這篇文章主要介紹了zen cart實現(xiàn)訂單中增加paypal中預(yù)留電話的方法,涉及數(shù)據(jù)庫字段的添加、ipn_create_order_array函數(shù)的修改及后臺模型文件的相應(yīng)修改技巧,需要的朋友可以參考下2016-07-07
在Laravel 的 Blade 模版中實現(xiàn)定義變量
今天小編就為大家分享一篇在Laravel 的 Blade 模版中實現(xiàn)定義變量,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10

