Tạo chức năng đăng ký và đăng nhập người dùng sử dụng make:auth Laravel 5.4

Post on: 2017-11-25 13:14:34 | in: Laravel
Đối với hầu hết các dự án sẽ cần tạo một chức năng năng đăng ký và đăng nhập cho người sử dụng. Chức năng này có thể khá phức tạp, thật may là Laravel đã hỗ trợ chúng ta hết chỉ cần gõ

Tiếp theo bài Hướng dẫn cài đặt và chạy thử laravel 5.4 trên môi trường local hôm nay chúng ta sẽ tìm hiểu cách tạo chức năng đăng ký và đăng nhập đơn giản trên Laravel 5.4.
Đảm bảo rằng bạn đã cài đặt composer nếu chưa bạn vui lòng đọc bài hướng dẫn cài đặt composer trước khi bắt đầu bài này.

Có nhiều IDE có thể sử dụng để code Laravel bạn có thể sử dụng như PhpStormNetbeans hoặc Eclipse nhưng ở đây mình sử dụng Sublime Text 3 :D

Đây là cấu trúc project của mình, project này mình để tên là first_project bạn có thể đặt tên tùy ý.

Thiết lập máy chủ cục bộ

Đối với môi trường linux

Vào thư mục gốc bằng lệnh cd sau đó gõ lệnh tiếp sau:

sudo vim /private/etc/hosts

Tiếp đến bạn nhập password rồi nhấn enter sau đó nhập nội dung sau:

127.0.0.1 first-project.com www.first-project.com

Nhấn esc sau đó :qw hoặc :x để lưu và thoát ra.

Đối với môi trường window bạn làm theo hướng dẫn Cách tạo tên miền ảo trên localhost

Ok bây giờ bạn hãy gõ first-project.com vào trình duyệt để xem kết quả.

Thiết lập cơ sở dữ liệu

Để xây dựng được một ứng dụng database là rất quan trọng, vậy nên việc đầu tiên chúng ta cần làm là tạo ra một database cho project của mình.

Có nhiều cách để tạo database ở đây mình dùng mysql của Xampp nên cần truy cập phpmyadmin để tạo database . Chắc hẳn mọi người đều biết cách tạo database nên mình sẽ không hướng dẫn ở đây. Mình sẽ tạo một csdl có tên first-projectkiểu utf8_unicode_ci vậy là xong.

Cấu hình file .env

Mở trình soạn thảo tìm file .env và sửa nội dung tương ứng vào:

APP_ENV=local
APP_KEY=base64:your-random-string
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=first-project
DB_USERNAME=root
DB_PASSWORD=
BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
 

Bạn có thể thấy rằng biến APP_ENV được đặt thành local và APP_DEBUG được đặt thành true, có nghĩa là chúng ta sẽ nhận được thông báo lỗi hữu ích trên môi trường local.

Nếu bạn sử dụng Composer để cài đặt laravel, APP_KEY sẽ tự động được sinh ra đảm bảo các session và dữ liệu được mã hóa an toàn.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=first-project
DB_USERNAME=root
DB_PASSWORD=

Thiết lập kết nối đến database của chúng ta.

Tạo chức năng đăng ký và đăng nhập người dùng

Đối với hầu hết các dự án sẽ cần tạo một chức năng năng đăng ký và đăng nhập cho người sử dụng. Chức năng này có thể khá phức tạp, thật may là Laravel đã hỗ trợ chúng ta hết chỉ cần gõ một câu lệnh đơn giản. Nhưng trước khi chúng ta chạy lệnh, hãy hiểu trước cấu trúc:

Controllers

Nếu bạn vào app/Http/Controllers, bạn sẽ thấy một thư mục Auth và trong đó có bốn bộ điều khiển:

LoginController
• RegisterController
• ForgotPasswordController
• ResetPasswordController

User Model

Laravel cũng cung cấp cho chúng ta user model:

  • User.php

Các model trong Laravel không có thư mục riêng, chúng cư trú trong thư mục app.

Migrations

Migrations trong Laravel giống như một version control của database, nó cho phép bạn chỉnh sửa, cập nhật trạng thái hiện tại của database. Migrations giúp cho việc quản lý database trở nên dễ dàng hơn.

Bạn có thể tìm thấy nó trong thư mục first-project/database/migrations với 2 file mặc định:

Bạn có thể tìm hiểu thêm về migrations tại đây.

Ok tiếp theo chúng ta tiến hành thay đổi tại first-project/config/database.php

'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',

Chuyển thành

'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',

Bây giờ chúng ta tiến hành migrations dữ liệu, chạy câu lệnh:

php artisan migrate

Vậy là chúng ta đã migrations được dữ liệu bạn có thể vào phpmyadmin để kiểm tra xem các bảng đã được tạo chưa.

Như đã nói ở trên Laravel hỗ trợ cho chúng ta chỉ cần gõ câu lệnh đơn giản:

php artisan make:auth

Bạn sẽ nhận được kết quả sau:

Bạn có thể gõ lại đường dẫn first-project.com vào trình duyệt để xem sự thay đổi.

Chọn Register để tạo tài khoản mới.

Bạn sẽ thấy tên người dùng khi đăng nhập:

Chọn logout sau đó login bằng tài khoản vừa tạo.

Bạn có thể thấy tất cả các tệp tin blade đã được tạo trong thư mục auth trong views.

Vậy là chúng ta đã tạo thành công chức năng đăng ký và đăng nhập sử dụng make:auth của Laravel 5.4 một cách đơn giản nhất. Bài sau chúng ta sẽ tìm hiểu kỹ hơn về 2 chức năng này và chỉnh sửa nó cho phù hợp hơn.

Chúc các bạn thành công!

Tag: laravel PHP nâng cao