iT邦幫忙

2021 iThome 鐵人賽

DAY 9
0
Software Development

跟著官方文件學習Laravel, 並實作出一個會員登入系統系列 第 9

Day9 跟著官方文件學習Laravel-登入驗證

第九天囉,今天我們要做登入驗證,首先我們要先想想,登入要做什麼判斷。

  1. 打帳號密碼,按下登入
  2. 確認帳號密碼正確
  3. 成功登入

好了那我們今天的任務就是完成這些項目
第一步,我們要把確認帳號密碼是否正確。

$user = DB::table('users')->where('account', '=', $account)
                                  ->first();

先取得user資訊

        if(Hash::check($password, $user->password)){
            return "你好,我的帳號是".$request->input('account');
        }
        return "帳號或密碼錯誤";

確認密碼也正確後,才能確認是本人,不是本人則告訴他帳密錯誤。

不過,我們跟他說密碼錯之後,要返回頁面讓他重新登入。

if(Hash::check($password, $user->password)){
            return "你好,我的帳號是".$request->input('account');
        }
        return Redirect::back()->withErrors(['帳號或密碼錯誤']);

那麼們的view也需要改一下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>login</title>
</head>
<body>
    <h1>登入畫面</h1>
    @if($errors->any())
    <h4>{{$errors->first()}}</h4>
    @endif

    <form action='/login' method='POST'>
        @csrf
        帳號:<input type='text' name='account'><br/>
        密碼:<input type='password' name='password'><br/>
        <button type='submit'>登入</button>
    </form>
</body>
</html>

OK,這樣就完成我們的帳號驗證囉,明天我們來看看如何利用migration。


上一篇
Day8 跟著官方文件學習Laravel-註冊帳號
下一篇
Day10 跟著官方文件學習Laravel-Migration
系列文
跟著官方文件學習Laravel, 並實作出一個會員登入系統30

尚未有邦友留言

立即登入留言