Laravel Override Login Method Example

Sep 16, 2022 . Admin



Hello Friends,

This tutorial will provide example of laravel override login method example. I’m going to show you about laravel override login method. we will help you to give example of laravel fortify custom login. I’m going to show you about laravel custom login function. Let's see bellow example laravel attempt login custom.

Sometime we need to overwrite or custom code for login method, so here i will give you very simple example how to overwrite auth default login function in laravel app.

You can use this example with laravel 6, laravel 7, laravel 8, and laravel 9 versions.

You can see bellow default route for login post method:

web.php
<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\LoginController;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::post('login', 'Auth\LoginController@login');

so, Basically you can create new method login into your LoginController and override auth method. let's add code as like bellow:

app/Http/Controllers/Auth/LoginController.php
<?php
  
namespace App\Http\Controllers\Auth;
  
use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Http\Request;
use Auth;
   
class LoginController extends Controller
{
    /*
    |--------------------------------------------------------------------------
    | Login Controller
    |--------------------------------------------------------------------------
    |
    | This controller handles authenticating users for the application and
    | redirecting them to your home screen. The controller uses a trait
    | to conveniently provide its functionality to your applications.
    |
    */
  
    use AuthenticatesUsers;
  
    /**
     * Where to redirect users after login.
     *
     * @var string
     */
    protected $redirectTo = RouteServiceProvider::HOME;
   
    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest')->except('logout');
    }
  
     /**
     * Write code on Method
     *
     * @return response()
     */
    public function login(Request $request)
    {
        $request->validate([
            'email' => 'required',
            'password' => 'required',
        ]);
     
        $credentials = $request->only('email', 'password');
        
        if (Auth::attempt($credentials)) {
  
            return redirect()->route('home');
        }
    
        return redirect("login")->withSuccess('Oppes! You have entered invalid credentials');
    }
}

i hope it can help you....

#Laravel