Laravel Multi Auth – Lara 5.8, 5.7, 5.6 Multiple Authentication

Laravel Multi Auth – Lara 5.8, 5.7, 5.6 Multiple Authentication

In this article, you'll learn how to create multi auth system in laravel 5.8. Mulitple auth system means multiple users can login in one application according to roles.

In this article, you'll learn how to create multi auth system in laravel 5.8. Mulitple auth system means multiple users can login in one application according to roles.

Laravel multi (auth) authentication - Multiple authentication is very important in the large application of laravel 5.6, 5.7, 5.8. Authentication is the process of recognizing user credentials.

In this laravel multi auth system, we will create a middleware for checking the users role. It is admin or normal user. We will create middleware name admin and configuration in kernal.php file and also in route file.

Laravel Multi Auth System

Contents

  • Download Laravel 5.8 Setup
  • Setup Database Credentials
  • Setting up migration and model
  • Define Route
  • Create Methods in Controller
  • Create Blade View
  • Start Development Server
  • Conclusion

Download Laravel 5.8 Setup

First We need Download fresh Laravel 5.8 setup. Use the below command to download the laravel 5.8 fresh setup on your system. We will keep the name of folder laravel multi auth

composer create-project --prefer-dist laravel/laravel multi-auth

Setup Database Crendentials

After successfully download laravel 5.8 Application, Go to your project .env file and set up database credential and move next step :

DB_CONNECTION=mysql

DB_HOST=127.0.0.1

DB_PORT=3306

DB_DATABASE=here your database name here

DB_USERNAME=here database username here

DB_PASSWORD=here database password here

Setting up migration and model

Next we will add new files name is_admin in users table. Open the migration of user in Database/migration/user.php and update the following field for admin.

$table->boolean('is_admin')->nullable();

Next open app/User.php and update the below field name is_admin here.

protected $fillable = [

        'name', 'email','avatar','password','mobile_number','is_admin',

    ];

Now, we will add is_admin filed after that we will use the below command for creating this field into database.

php artisan migrate

Now, we need to create build-in authentication system. Use the below command for creating default auth system in laravel. We will change laravel build-in auth system to multi auth system

php artisan make:auth

Create Middleware and Setting up

In this laravel multi auth system , we need to create a middleware for checking the users. Who can access the admin area or who can access the normal user area.

php artisan make:middleware Admin

After create a middleware go to app/http/middleware. Implement the logic here for checking a loggedin users. Update the code in this handle function.

if(auth()->user()->is_admin == 1){
 return $next($request);
 }
 return redirect(‘home’)->with(‘error’,’You don't have admin access’);
 }

We need to register this route in the app/Http/Kernel.php . Update the $routeMiddleware property with :

// Kernel.php

protected $routeMiddleware = [

‘auth’ => \Illuminate\Auth\Middleware\Authenticate::class,

‘auth.basic’ => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,

‘bindings’ => \Illuminate\Routing\Middleware\SubstituteBindings::class,

‘can’ => \Illuminate\Auth\Middleware\Authorize::class,

‘guest’ => \App\Http\Middleware\RedirectIfAuthenticated::class,

‘throttle’ => \Illuminate\Routing\Middleware\ThrottleRequests::class,

‘admin’ => \App\Http\Middleware\Admin::class,

];.

?>

Create Route

Now We will one routes in web.php file as like below.

Open routes/web.php file

Route::get('admin/routes', '[email protected]')->middleware('admin');

Create Functions in Controller

Now open the controller let’s go to the => app/Http/Controllers/HomeController.php. Now create two methods here.

public function index()

{

return view(‘home’);

}

public function admin()

{

return view(‘admin’);

}

Create Blade View

Now we will create two blade view files first is display home page and second is display after login.

Open the resources/views/home.blade. file and update the below code.

@extends('layouts.app')
 
@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div class="card-header">Dashboard</div>
 
                <div class="card-body">
                    @if(auth()->user()->is_admin == 1)
                    <a href="{{url('admin/routes')}}">Admin</a>
                    @else
                    <div class=”panel-heading”>Normal User</div>
                    @endif
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

Now, I checked the user profile. If it is admin,

it will navigate to the admin area. Otherwise, it will redirect to users area.

Create admin.blade.php

Open the resources/views/home.blade.php file and update the following code:

@extends('layouts.app')
 
@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-8">
            <div class="card">
                <div class="card-header">Dashboard</div>
 
                <div class="card-body">
                    @if(auth()->user()->is_admin == 1)
                    <a href="{{url('admin/routes')}}">Admin</a>
                    @else
                    <div class=”panel-heading”>Normal User</div>
                    @endif
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

Start development server

Now we will start developement server using the below command and test our laravel multi auth system:

php artisan serve

After complete all steps, see the last testing steps for laravel multi auth system :

  • Download Laravel 5.8 Setup
  • Setup Database Credentials
  • Setting up migration and model
  • Define Route
  • Create Methods in Controller
  • Create Blade View
  • Start Development Server
  • Conclusion

*Originally published at *https://www.tutsmake.com

Learn More

Build a Basic CRUD App with Laravel and Vue

Build a Basic CRUD App with Laravel and React

Build a CMS with Laravel and Vue

Build a live commenting system with Laravel and Vue.js

Build a Simple REST API in PHP

PHP with Laravel for beginners - Become a Master in Laravel

Projects in Laravel: Learn Laravel Building 10 Projects

Laravel for RESTful: Build Your RESTful API with Laravel

Fullstack Web Development With Laravel and Vue.js

Advantages of Hiring PHP Developer for your Website Project

Advantages of Hiring PHP Developer for your Website Project

PHP - Hypertext pre-processor, a scripting language used by many people in developing web pages, but most of us are unaware even of the full form. To train someone and make them learn this whole language is as difficult and time-consuming as it is...

PHP - Hypertext pre-processor, a scripting language used by many people in developing web pages, but most of us are unaware even of the full form. To train someone and make them learn this whole language is as difficult and time-consuming as it is to learn the language yourself. That’s why PHP developers are there to make your life easy. This article will give us the advantages and requirements of Hire PHP Developer for our very own website project.

First of all, let us understand the value the right developer brings to the project and why it is important for your business.

A website is a major component of any company/business and is very important for its face value, the way it represents the company on the internet is critical for any business to succeed. This is the reason why companies are looking for PHP developers who can develop their webpage.

If you're planning to do an online business, your PHP programmer will be the first person to transfer your thinking onto the webpage. You should, therefore, employ developers from PHP to make your hypothetical idea a reality.

With this software programming language, PHP developers all-around can easily build website frameworks, web content management systems, web template systems, and various other web-based designs.

Some of the reasons why we need to outsource these developers are:

Not everyone is the best in each field, all of us have our specific skills and talents hence, PHP developers are also the best at what they do. The time and money spent on the training of the in house employees would be saved if the professional PHP developers are hired. Instead of multitasking, if the employees were to focus on what they’re good at it would increase productivity too.

The PHP developers would be much more professional than the in-house workers. It would lead to the seriousness of work. Hence, on-time delivery is guaranteed with hired PHP developers.

In addition to these benefits, you would also be able to track your project through every stage in constant communication with your online team. These advantages make it incredibly popular and smart to hire a PHP developer.

The PHP developers have in-depth knowledge of PHP, HTML and various frameworks in terms of technical capabilities. Hiring PHP developers are advised to give your website a professional look based on PHP.

Much of web success depends on the involvement of social media. The developer can add to your social networking pages a feature that explicitly redirects visitors. In addition, SEO experts also suggest better connections to the website's social network.

Just like a tailor stitches our dresses according to our preferences and is ready to make last-minute changes. A PHP developer will also be available at the nick of your call to make the website just the way you want it to be and have a customized solution for every problem.

Read also: Why & How to Hire Dedicated PHP Developer

At some point in your business, you’re going to have problems regarding your webpage due to the rapidly changing technology, instead of struggling with ideas like these and not being able to come up with an appropriate solution a PHP web developer could help us with our problems just like any technician would help us with the problems we face in our offices or any architect would help us with designing the structure of a building or any interior designer would help us with setting up our home. The PHP development company are hubs of workers who would help us overcome these problems and are always there.

Source by

Hire PHP Developer and Web Developer for your Online Business

Hire PHP Developer and Web Developer for your Online Business

PHP is widely used open-source scripting language it helps in making dynamically easy your websites and web application. Mobiweb Technology is your best technical partner and offering you solution for any kind of website and application...

PHP is widely used open-source scripting language it helps in making dynamically easy your websites and web application. Mobiweb Technology is your best technical partner and offering you solution for any kind of website and application development. To hire PHP developer and web developer at affordable prices contact Mobiweb Technology via [email protected]

Laravel Framework Development Services | Laravel Web Development

CMARIX is leading Laravel Web application Development Service Provider with the track record of implementing diverse high-performance Laravel web applications with skilled Laravel developer team for clients across the globe<a href="https://www.cmarix.com/laravel-framework-development-services.html?utm_source=SB" target="_blank">.Continue</a>

CMARIX is leading Laravel Web application Development Service Provider with the track record of implementing diverse high-performance Laravel web applications with skilled Laravel developer team for clients across the globe.Continue