:::

3. 建立使用者認證

  1. 在VS Code中,按下Ctrl+`,會開啟終端機。務必記得先進入到專案資料夾底下,因為 artisan指令只有在專案資夾中才能使用。
  2. 建立使用者認證機制
    php artisan make:auth
  3. Artisan 是 Laravel 內置的命令列介面。它提供了一些有用的命令協助您開發,它是由強大的 Symfony Console 組件所驅動。
  4. 由於資料表預設編碼改為 utf8mb4所以,若資料庫使用的版本是 MySQL 5.7.7 或MariaDB 10.2以下的版本沒做修改的話將無法順利執行建立資料表動作,會出現如下訊息:
  5. 原因在於文字欄位預設是 255 個字元,但用utf8mb4編碼的話,每個字元佔 4 位元組,也就是說,255個字元一共需要4*255=1020 位元組,但最大的索引長度才 767位元組,因此,最多只能塞得下191個字元,因此我們得修改文字欄位預設字元數,所以請先編輯 \專案\app\Providers\AppServiceProvider.php,先在上方加入:
    use Illuminate\Support\Facades\Schema;

    接著在boot()中加入以下語法,告知預設文字字元數為191個:

    public function boot()
    {
        Schema::defaultStringLength(191);
    }
  6. 接著建立資料表(由於扯到到資料庫,所以如果要在XAMPP中生效,須進入 ~/xampp/htdocs/專案/底下執行;若要在Homestead中生效,須vagrant ssh進入虛擬機後,到 ~/public_html/專案/下執行):
    php artisan migrate
  7. 順利的話,從phpMyAdmin或Adminer就可以看到建出三個新資料表:migrationspassword_resetsusers
  8. 連上網站試試 http://localhost/myshop/public
  9. 如果沒有裝伺服器的話,亦可直接啟動內建伺服器(關閉請按Ctrl+C
    php artisan serve
  10. 然後連上 http://localhost:8000/home 試試
  11. 連上後替自己建立一組帳號吧!

二、常用方法(底下暫時用不到,只是順帶一寫)

  1. 檢查是否已經登入?
    use Illuminate\Support\Facades\Auth;
    
    if (Auth::check()) {
        // 這個用戶已經登錄...
    }
  2. 取得使用者訊息
    $user = Auth::user();
  3. 指定條件來查找使用者:

    if (Auth::attempt(['email' => $email, 'password' => $password, 'active' => 1])) {
        //某Email和密碼,且已啟用的用戶
    }
  4. 登入

    Auth::login($user);
    
    // 登錄並且「記住」用戶
    Auth::login($user, true);
  5. 登出

    Auth::logout();

到GitHub觀看此單元程式異動  


:::

書籍目錄

展開 | 闔起

http%3A%2F%2Fcampus-xoops.tn.edu.tw%2Fmodules%2Ftad_book3%2Fpage.php%3Ftbsn%3D37%26tbdsn%3D1142

計數器

今天: 1485148514851485
昨天: 4745474547454745
總計: 7711446771144677114467711446771144677114467711446