亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

關于Laravel5.4實現多字段登錄的方法

2020-03-22 19:42:10
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了關于Laravel5.4實現多字段登錄的方法,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

最近在工作中遇到一個需求,需要實現多字段登錄的一個效果,就是可以使用手機或者郵箱任一種方式的登錄,現在將解決的過程分享出來,所以這篇文章主要給大家介紹了基于Laravel5.4實現多字段登錄功能的相關資料,需要的朋友可以參考借鑒,下面來一起看看吧。

前言

最近在一個項目中需要實現一個多字段登錄功能,簡單來說就是可以使用用戶名、郵箱或手機號任意一種方式進行登錄。所以本文就來給大家介紹了關于Laravel5.4多字段登錄的相關內容,分享出來供大家參考學習,話不多說了,來一起看看詳細的介紹吧。

以下內容基于laravel5.4

方法如下:

首先,通過artisan工具生成auth模塊

php artisan make:auth

這時候App/Http/Controllers目錄下會新增一個Auth目錄,該目錄下為注冊登錄相關的控制器,resources/views目錄下也會生成一些與注冊登錄相關的視圖

laravel的官方文檔中說手動認證用戶需要使用Illuminate/Support/Facades/Auth類的attempt方法,如下:

 ?phpnamespace App/Http/Controllers;use Illuminate/Support/Facades/Auth;html' target='_blank'>class LoginController extends Controller * Handle an authentication attempt. * @return Response public function authenticate() if (Auth::attempt([ email = $email, password = $password])) { // Authentication passed... return redirect()- intended( dashboard }

這個方法會根據你傳入的參數判斷數據庫中是否存在與之相匹配的用戶,如果存在并且密碼正確返回true,反之返回false

遂在LoginController中添加該方法,但是好像并沒有效果

于是開始觀察LoginController的實現機制,發現它實現了一個AuthenticatesUsers的trait,追蹤到這個trait的定義文件,發現這個文件就是我們想要的東西

里面有一個login方法,就是負責處理登錄的邏輯

/** * Handle a login request to the application. * @param /Illuminate/Http/Request $request * @return /Illuminate/Http/RedirectResponse|/Illuminate/Http/Response public function login(Request $request) // 表單驗證 $this- validateLogin($request); // If the class is using the ThrottlesLogins trait, we can automatically throttle // the login attempts for this application. We ll key this by the username and // the IP address of the client making these requests into this application. // 防止暴力破解,多次登錄失敗會根據IP鎖定 if ($this- hasTooManyLoginAttempts($request)) { $this- fireLockoutEvent($request); return $this- sendLockoutResponse($request); // 這個就是主要的負責判斷數據庫中是否存在相應的賬號和密碼的地方,我們需要重寫的就是attemptLogin方法 if ($this- attemptLogin($request)) { return $this- sendLoginResponse($request); // If the login attempt was unsuccessful we will increment the number of attempts // to login and redirect the user back to the login form. Of course, when this // user surpasses their maximum number of attempts they will get locked out. // 登錄失敗,失敗次數++,防止暴力破解 $this- incrementLoginAttempts($request); // 返回失敗響應 return $this- sendFailedLoginResponse($request); }

分析了一波這個文件,發現主要進行登錄判斷的就是attemptLogin方法,我們只要重寫這個方法即可,先看看原來的是怎么寫的,根據原來的進行重寫:

/** * Attempt to log the user into the application. * @param /Illuminate/Http/Request $request * @return bool protected function attemptLogin(Request $request) return $this- guard()- attempt( $this- credentials($request), $request- has( remember ) }

在LoginController重寫后:

public function attemptLogin(Request $request) $username = $request- input( username  $password = $request- input( password  // 驗證用戶名登錄方式 $usernameLogin = $this- guard()- attempt( [ username = $username, password = $password], $request- has( remember ) if ($usernameLogin) { return true; // 驗證手機號登錄方式 $mobileLogin = $this- guard()- attempt( [ mobile = $username, password = $password], $request- has( remember ) if ($mobileLogin) { return true; // 驗證郵箱登錄方式 $emailLogin = $this- guard()- attempt( [ email = $username, password = $password], $request- has( remember ) if ($emailLogin) { return true; return false; }

只需要用attempt方法進行多次判斷即可,只要成功就返回true,不成功繼續用其他字段進行判斷,都不成功則返回flase

測試,可以實現多字段登錄效果

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP !

相關推薦:

Larave如何l實現短信注冊

使用Laravel實現定時任務的方法

以上就是關于Laravel5.4實現多字段登錄的方法的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人a免费视频| 亚洲欧美综合精品久久成人| 精品亚洲男同gayvideo网站| 欧美影院成年免费版| 国产午夜精品全部视频播放| 亚洲美女av网站| 亚洲自拍偷拍福利| 不卡在线观看电视剧完整版| 日本韩国欧美精品大片卡二| 高潮白浆女日韩av免费看| 亚洲高清一二三区| 国产精品com| 亚洲人成在线观| 91久久在线播放| 日本午夜精品理论片a级appf发布| 久久精品国产电影| 亚洲午夜国产成人av电影男同| 日韩欧美一区二区三区久久| 欧美日韩一区二区免费在线观看| 福利视频第一区| 国产97人人超碰caoprom| 色综合色综合久久综合频道88| 亚洲黄色片网站| 日韩中文字幕在线视频| 国产精品自产拍在线观看中文| 国产一区二区三区在线免费观看| 精品国产视频在线| 91成人在线观看国产| 粉嫩av一区二区三区免费野| 欧美成人激情视频免费观看| 91亚洲精品视频| 午夜精品久久久久久久久久久久| 高清视频欧美一级| 欧美极品少妇xxxxⅹ裸体艺术| 久久精品色欧美aⅴ一区二区| 日韩va亚洲va欧洲va国产| 欧美电影第一页| 久久国产精品亚洲| 亚洲一区www| 欧美精品日韩三级| 91国在线精品国内播放| 国产亚洲精品一区二区| 久久久亚洲国产| 色先锋资源久久综合5566| 日韩av在线免费观看| 欧美巨乳在线观看| 国产福利精品av综合导导航| 在线视频欧美日韩| 91国产美女视频| 91九色单男在线观看| 亚洲精品久久久久久久久久久久久| 69视频在线免费观看| 中文字幕日韩综合av| 成人免费网站在线观看| 久久视频在线观看免费| 亚洲美女精品成人在线视频| 欧美一级片一区| 久热精品视频在线免费观看| 精品国产精品三级精品av网址| 久久久久久有精品国产| 日韩专区在线观看| 国产精品青青在线观看爽香蕉| 97人人模人人爽人人喊中文字| 欧美一级黄色网| 97香蕉超级碰碰久久免费的优势| 欧美在线视频观看免费网站| 久久天天躁狠狠躁夜夜躁| 亚洲精品日韩在线| 不卡在线观看电视剧完整版| 欧美性猛交xxxx乱大交3| 成人激情视频在线| 一区二区成人av| 欧美日韩xxxxx| 精品国产乱码久久久久酒店| 色诱女教师一区二区三区| 欧美在线免费观看| 日韩中文字幕在线| 国产精品精品一区二区三区午夜版| 精品欧美国产一区二区三区| 欧美电影免费观看高清完整| 成人在线视频福利| 97精品视频在线播放| 一道本无吗dⅴd在线播放一区| 国产91热爆ts人妖在线| 欧美日韩精品在线| 亚洲免费一在线| 成年人精品视频| 午夜精品美女自拍福到在线| 欧美激情精品久久久久久蜜臀| 国产成人精品视频在线观看| 两个人的视频www国产精品| 久久久久久久影视| 国产精品久久久久久久天堂| 国产精品v日韩精品| 精品欧美aⅴ在线网站| 欧美激情亚洲精品| 国产精品一区二区三区毛片淫片| 欧美高清视频一区二区| 成人福利在线视频| 中文字幕国产精品| 亚洲免费一级电影| 国产精品视频久久久| 日韩欧美在线看| 7m精品福利视频导航| 亚洲国产精品久久91精品| 欧美香蕉大胸在线视频观看| 国产精品美女久久久久久免费| 欧美一区亚洲一区| 亚洲精品国精品久久99热| 亚洲国产精品视频在线观看| 九九久久综合网站| 久久免费精品视频| 国产精品久久久久久av福利| 97超级碰碰人国产在线观看| 久久久久五月天| 欧美性极品少妇精品网站| 在线观看日韩www视频免费| 中文字幕精品国产| 欧美日韩国产一区二区三区| 欧美日韩亚洲一区二区三区| 性欧美视频videos6一9| 久久九九热免费视频| 欧洲精品在线视频| 日产精品99久久久久久| 国产欧美日韩综合精品| 亚洲无线码在线一区观看| 欧美日韩国产精品专区| 欧美在线亚洲在线| 国内成人精品视频| 国产区精品在线观看| 奇门遁甲1982国语版免费观看高清| 欧美一区二区大胆人体摄影专业网站| 欧美一区二区三区免费观看| 69精品小视频| 国产色婷婷国产综合在线理论片a| 亚洲淫片在线视频| 亚洲精品第一国产综合精品| 久久这里有精品视频| 国产精品视频精品视频| 久久亚洲影音av资源网| 一本一道久久a久久精品逆3p| 欧美精品在线视频观看| 国产视频欧美视频| 日韩久久精品电影| 国产精品第七十二页| 欧美丰满老妇厨房牲生活| www.久久久久| 亚洲片av在线| 成人国产亚洲精品a区天堂华泰| 国内精品免费午夜毛片| 日韩经典中文字幕在线观看| 26uuu久久噜噜噜噜| 久久久久久久久久久免费精品| 久久久久久久999| 亚洲视频专区在线| 亚洲人成免费电影| 亚洲欧美变态国产另类| 亚洲成人免费网站| 国产午夜精品一区二区三区| 国产一区深夜福利| 91在线观看免费高清| 久久精品国产2020观看福利| 亚洲欧美精品一区二区| 色综合久久精品亚洲国产|