Skip to content

Blog Công Nghệ

MENUMENU
  • Trang chủ
  • Giới Thiệu
  • Lập Trình
    • Lập Trình Website
      • Laravel
        • Phân Tích Dự Án
      • PHP
      • SQL
      • HTML
      • CSS
      • Javascipt
      • My Project
      • Wordpress
    • Luyện Skill
    • Lập trình winform
    • CSDL
    • Lập Trình Android
    • Trí tuệ nhân tạo
    • Khai Khoáng Dữ Liệu
    • Arduino
    • Khác
    • Đồ án
  • Phần Mềm
    • Powerpoint
    • Tool
  • Cuộc sống và Giải trí
    • Hợp âm
    • web5ngay - youtube
    • Công Giáo
    • Kỹ Năng Sống
    • Street Workout
  • Danh sách bài viết
  • Guide line
    • Guild line phỏng vấn
    • Guide lines Laravel
    • Guide line Module Frontend
  • Tóm tắt sách
  • Fanpage

Blog Công Nghệ

Nơi chia sẻ kiến thức

Authentication của laravel

12 Tháng Năm, 2020 by admin
Lượt xem: 65
Authentication của laravel

Contents

  • 1. Auth là gì?
  • 2. Cài đặt
  • 3. Kết Quả
  • 4. Sử dụng
  • 5. Tùy chỉnh Authentication
    • 5.1 Tắt tính năng Registration
    • 5.2 Thay đổi chuyển hướng trang của Authentication Laravel 6 mặc định
    • 5.3 Tùy chỉnh thêm các thuộc tính và validate form đăng ký
    • 5.4 Thay đổi email đăng nhập thành một trường bất kì
  • 6. Kết luận

1. Auth là gì?

Tiếp theo là một điều khá quan trọng trong Laravel đó là Auth, vậy Auth là gì? Hiểu đơn giản Auth là phần liên quan đến đăng nhập, đăng ký, reset password mà Laravel tạo sẵn cho chúng ta.

Auth là gì

2. Cài đặt

Với các phiên bản trước Laravel 6 thì để tạo Auth ta sử dụng lệnh:

php artisan make:auth

Với phiên bản Laravel 6 thì chúng ta không cần chạy lệnh phía trên nhé vì Laravel 6 đã tạo sẵn cho chúng ta. Tiếp theo ta cài thêm thư viện để có view trỏ đến.

composer require laravel/ui "^1.2"
//từ laravel 5.8 trở lên mới cài được nhe

Sau đó bạn chạy thêm lệnh này để render ra view mặc định của laravel.

php artisan ui vue --auth

Nếu chưa chạy tạo cơ sở dữ liệu lần nào thì chạy code dưới đây nhé.

php artisan migrate

Cài đặt Authentication

Tiếp theo là bạn phải sửa đường dẫn link style, link javasript và thêm link bootstrap. Để đơn giản bạn copy code bên dưới và vào file resources/views/layouts/app.blade.php replace lại phần head nhé!

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <!-- CSRF Token -->
    <meta name="csrf-token" content="{{ csrf_token() }}">

    <title>{{ config('app.name', 'Laravel') }}</title>

    <!-- Scripts -->
    <script src="{{ asset('resources/js/app.js') }}" defer></script>

    <!-- Fonts -->
    <link rel="dns-prefetch" href="//fonts.gstatic.com">
    <link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet">

    <!-- Styles -->
    <link href="{{ asset('resources/sass/app.scss') }}" rel="stylesheet">

    <!-- Bootstrap -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>
</head>

3. Kết Quả

Giao diện mặc định.

Authentication của laravel là gì

Giao diện đăng ký.

Authentication của laravel hoạt động như thế nào

Giao diện đăng nhập

Authentication của laravel 6

Giao diện reset password

hướng dẫn Authentication của laravel

4. Sử dụng

Khai báo use Illuminate\Support\Facades\Auth; để có thể sử dụng Auth.

$id = Auth::user()->id; //Lấy về ID người .
$user = Auth::user() // Lấy về tất cả các thông tin của người dùng.
$email = Auth::user()->email // Lây về email người dùng.

Muốn kiểm tra người dùng đăng nhập chưa ta sử dụng:

use Auth
//khai báo trên class lệnh trên mới sử dụng được nhé!
  
if (Auth::check()) {
     return (Auth::user()->email);
}

5. Tùy chỉnh Authentication

Tùy chỉnh Authentication

5.1 Tắt tính năng Registration

Mình có sử dụng các chèn code vào file routes/web.php

Auth::routes(['register' => false]);

Nhưng nó không hoạt động trong dự án của mình. Do đó mình sử dụng tính năng này bằng cách ghi đè route đó.

Route::match(['get', 'post'], 'register', function(){
    return redirect('/');
});

Điều này áp dụng được cho cả reset password nhé.

5.2 Thay đổi chuyển hướng trang của Authentication Laravel 6 mặc định

Bạn vào App\Http\Controller\Auth\LoginController.php và thay đổi thuộc tính redirectTo

protected $redirectTo = '/trang-admin';

File trên là thay đổi chuyển hướng login nếu bạn muốn chuyển hướng đăng ký hay reset password thì vào controller tương ứng nhé.

5.3 Tùy chỉnh thêm các thuộc tính và validate form đăng ký

Mình đọc được một bài viết khá hay, khá đầy đủ về vấn đề này. https://toidicode.com/authentication-trong-laravel-register-48.html

5.4 Thay đổi email đăng nhập thành một trường bất kì

Bước 1: Tạo thêm một function trong App\Http\Controller\Auth\LoginController.php. Nói tạo thêm chớ thực ra là nó ghi đề lại hàm đã được định nghĩa trong lớp AuthenticatesUsers.

public function username()
{
    return 'id';
}

//id là tên cột mình thay đổi cho email, các bạn thay thế theo nhu cầu của mình (username,...).

Bước 2: Vào App\Http\Providers\User.php để thêm cột đó vào model của mình.

protected $fillable = [
        'name', 'email', 'password', 'id'
];

Bước 3: Chỉnh sửa mã nguồn view. Bạn thay thế những gì có từ email thành tên trường của bạn.
Tùy chỉnh Authentication trong laravel

  • Màu xanh: là bạn thay thế thành tên trường của bạn
  • Màu vàng: là bạn thay thế thành tiêu đề hiện bên trái thanh nhập liệu (Mình quên thay thành id rồi nếu làm theo bạn sửa thành id dùm mình nhé)
  • Màu đỏ: là bạn thay thế hành kiểu của khung nhập.

Kết quả:
Hướng dẫn tùy chỉnh Authentication trong laravel

6. Kết luận

Như vậy mình đã hướng dẫn các bạn sử dụng Auth trong Laravel, cũng khá đơn giản phải không. Có thắc mắc gì các bạn để lại bình luận bên dưới nhé. Bài viết sau mình sẽ hướng dẫn các bạn Queue trong Laravel.

Related posts:

  1. Thiết kế giao diện quản trị admin nhanh với Laravel và thư viện Infyom
  2. Kinh nghiệm laravel
  3. Phân Tích Project Blog Laravel từ github

Post navigation

Previous Post:

Ntucoder – GAO – Siêu nhân GAO

Next Post:

Kỹ năng phỏng vấn xin việc

Trả lời Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Ẩn sidebar

Tìm kiếm

Generic selectors
Exact matches only
Search in title
Search in content
Search in posts
Search in pages

Blog Công Nghệ

Bài viết mới

  • Master typescript
  • Sendmail trong Laravel sử dụng dịch vụ SES, SQS của Amazon
  • Install SSL in Nginx Ubuntu
  • Docker study
  • Bảo vệ: Hướng dẫn code bot Telegram easy game

Lượng truy cập

0074450
Visit Today : 46
Visit Yesterday : 178
This Month : 721
Who's Online : 5
© 2025 Blog Công Nghệ | WordPress Theme by Superbthemes