สอน Laravel 5.7 : บทที่ 6 การทำ Authentication

บทเรียนออนไลน์ #255
เขียนโดย :
มีผู้อ่าน : 2,998 คน วันนี้ : 8 คน

สวัสดีครับเหล่า PHP Developer ทุกท่าน บทความก่อนหน้านี้ เมื่อเราได้รู้จักการทำงานของ route กันไปแล้วนะครับ ต่อมาเราจะมาทำ Authentication หรือระบบ Login , Register อย่างง่ายๆ ในแบบของ Laravel กันนะครับ

 

สำหรับคนที่ใช้ Laravel version 5.4 ขึ้นมาถึง 5.7 นี้นะครับ ให้เรา เช็ค version ของเจ้าตัว MY SQL ของเราก่อนนะครับ ถ้าหาก MY SQL มี version ที่ต่ำกว่า 5.7.7 จะไม่สามารถ ใช้ migration ได้  วิธีแก้ไขคือ เข้าไปที่

 

App/Providers/AppServiceProvider.php

 

 

use IlluminateSupportFacadesSchema;

เพิ่ม use ตัวนี้ลงไปในส่วนหัวของ page ครับ และใน method boots ให้เพิ่มคำสั่งนี้ลงไปครับ

Schema::defaultStringLength(191);

 

 

เท่านี้ก็สามารถทำ Migration ได้แล้วครับ

ให้ใช้คำสั่ง php artisan make:auth ใน command line ครับ

 

 

จากนั้นให้ลองสังเกตดูที่ Folder database/migrations

จะมี File ที่เพิ่งจะถูกสร้างขึ้นมาใหม่

 

 

จากนั้นนะครับ ให้เราไปที่ File create_users_table.php

แต่ แอ๊ะ !! เดี๋ยวก่อน เรายังไม่มีฐานข้อมูลกันเลย ให้เราสร้างฐานข้อมูล ใน phpmyadmin ให้เรียบร้อย ก่อน ขั้นตอนนี้เราจะไม่อธิบายให้อ่านกันนะครับ ลองหาข้อมูลเพิ่มเติมได้ครับ

เมื่อสร้าง ฐานข้อมูลเสร็จสิ้นแล้วจากนั้นเรามาทำให้ database รู้จักกับ File งานเรากันต่อเลยครับ

ไปที่ File .env

 

 

ให้สังเกตที่ส่วนนี้นะครับ

บรรทัดที่ 12 DB_DATABASE = {ชื่อของฐานข้อมูลของเรา}

บรรทัดที่ 13 DB_USERNAME = {username ทางเข้า phpmyadmin ของเรา}

บรรทัดที่ 14 DB_PASSWORD = {password ทางเข้า phpmyadmin ของเรา ถ้าหากไม่มี ให้เว้นว่างเอาไว้ดังภาพ}

    

เท่านี้ก็เสร็จสิ้นการ connect database เรียบร้อยแล้วนะครับ ให้กลับมาที่ File create_users_table.php กันต่อลย

 

 

นี่เป็น File สำหรับสร้าง table ซึ่งตอนนี้ยังไม่ได้ถูกสร้าง

เราสามารถเพิ่ม ฟิลด์ ได้ที่ไฟล์นี้เลยครับ หากพอใจแล้ว ให้ทำการพิม php artisan migrate ใน command line

 

 

หากขึ้นแบบนี้แสดงว่าเสร็จสิ้นการ ทำ Authentication ให้เราลองรันไฟล์ welcome.blade.php ดูครับจะมี ปุ่ม Login และ Regiter อยู่มุมขวาบน และลองเล่นดู ครับ

 


เป็นอย่างไรครับ สะดวกสบายมากเลยใช่มั้ยละครับการทำ Authenticaition ของ Laravel แล้วพบกันใหม่ในบทต่อๆไป ขอบคุณครับ