1. 創(chuàng)建登錄控制器
在項目根目錄輸入: php artisan make:controller Admin/LoginController
![](/d/20211017/e96d30fbc3d3b743ee46811e7b2049b8.gif)
2.創(chuàng)建用戶模塊 以及數(shù)據(jù)庫
php artisan make:model Model/Admin -m
![](/d/20211017/8d58df5f8f066175b09815cdd18e8e8d.gif)
運行之后 項目中會新增兩個PHP文件
![](/d/20211017/5a147d58ebce4e2707e6c2810a6eca0b.gif)
新創(chuàng)建了admins用戶表,此用戶表默認新建中只有主鍵,創(chuàng)建時間,編輯時間。我們接下來新加兩個字段 用戶名(username)
和密碼(password).
![](/d/20211017/ef3ee59d4335a1b202d225060c16e6ef.gif)
在up函數(shù)中加上這兩個字段,后面可以按自己的需求添加屬性。
laravel默認的字符集是utf8mb4,新增的數(shù)據(jù)庫字段會有這個字符集,想要改成utf8 可以直接修改datebase
![](/d/20211017/86da7a420450a624e8e576c7bf4b77d2.gif)
接下來運行數(shù)據(jù)遷移命令 php artisan migrate 來創(chuàng)建數(shù)據(jù)表
![](/d/20211017/405c37ae1a4d8445f2e33d8b5723ac43.gif)
運行之后數(shù)據(jù)庫中新增了admins表
![](/d/20211017/8e663dac8677b541b74965cf5392f4b0.gif)
3.填充數(shù)據(jù)
因為還沒有做注冊所以我們利用tinker來表中填充數(shù)據(jù),如果已經(jīng)做了注冊功能就不用坐下面的步驟了,也可以直接運行sql,直接
填充,保證密碼加密。
首先在配置中添加想要新增的數(shù)據(jù)。在datebase/factories/
![](/d/20211017/ae9a4b3162ba1aa205f0704dc6329a83.gif)
define方法里面寫自己的用戶模塊的命名,里面加上默認密碼。
![](/d/20211017/cdb5b49dbee9c1e8ebdec12bcd88b3c1.gif)
之后運行php artisan tinker 命令 里面輸入 factory(模塊命名,條數(shù));
運行之后數(shù)據(jù)庫中新增了三條數(shù)據(jù),實例中密碼都是admin。
![](/d/20211017/c8e0989ec3643c17cf8ddc26a761d47d.gif)
4.用戶登錄配置
首先在config/auth.php中添加配置,框架默認都是走的自帶的User模塊。
![](/d/20211017/97f27912129efee0cf8e2a47e70dae60.gif)
加上圖中的兩個配置,命名按照自己的模塊名字來命名。
修改模塊繼承函數(shù)跟系統(tǒng)的自帶的User.php一樣就可以了。
![](/d/20211017/0ac7fa53c5db132865b1a6a1762060ee.gif)
5.登錄函數(shù)
這里先略過前段頁面的表單的寫法以及表單提交的方式,直接獲取數(shù)據(jù)的函數(shù)來寫。
$statue = Auth::guard('admin')->attempt([
'username'=>$request->input('username'),
'password'=>$request->input('password'),
]);
以上就是登錄函數(shù),guard函數(shù)中寫入自己在auth.php配置中寫的命名。指定用戶登錄的表。
![](/d/20211017/6f9924754d838c476c16395198637d84.gif)
在前段頁面中獲取的時候也要指定命名。
![](/d/20211017/02b56e2da007536d57d7672209612578.gif)
6.限制頁面權限
后臺登陸首頁之前判斷是否登陸,如果沒有登錄則跳轉(zhuǎn)到登錄頁。
首先做一個中間件,讓每個頁面控制器運行之前先運行中間件,我們在中間件中寫一些頁面是否有權限訪問的動作。
![](/d/20211017/b615d18af833e4d49dceda07b3b30cde.gif)
運行之后里面填寫驗證指定的表用戶是否登陸
![](/d/20211017/0dd34c0fb9203b541f0c7edfe6adc76b.gif)
之后我們在kernel.php中添加中間件
![](/d/20211017/456ac414a21154e6bb99066911bb7fa2.gif)
我們在登錄的控制器中調(diào)用,并指定哪個函數(shù)不需要限制。
![](/d/20211017/e00f027cd7c63a4e1c69da7b708250e4.gif)
7.注銷
![](/d/20211017/2fef7c08331ba524e28a8c3c2592d8d3.gif)
以上這篇laravel 實現(xiàn)用戶登錄注銷并限制功能就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 教你一步步實現(xiàn)Android微信自動搶紅包
- java模擬微信搶紅包的實例代碼
- IOS 實現(xiàn)微信自動搶紅包(非越獄IPhone)
- 詳解利用redis + lua解決搶紅包高并發(fā)的問題
- js仿微信搶紅包功能
- laravel框架實現(xiàn)后臺登錄、退出功能示例
- Laravel框架實現(xiàn)即點即改功能的方法分析
- 利用laravel+ajax實現(xiàn)文件上傳功能方法示例
- laravel框架關于搜索功能的實現(xiàn)
- Laravel框架實現(xiàn)利用中間件進行操作日志記錄功能
- Laravel框架實現(xiàn)搶紅包功能示例