Laravel Redirect | Laravel - Redirections



What is Laravel Redirection?

  • On a Web site, redirection is a technique for moving visitors to a different Web page than the one they request, usually because the page requested is unavailable.
  • Web users often encounter redirection when they visit the Web site of a company whose name has been changed or which has been acquired by another company
 laravel redirections
laravel , laravel framework , laravel documentation , laravel tutorial , laravel install , laracasts

Redirecting to Named Routes:

  • Named route is used to give specific name to a route.
  • The name can be assigned using the “as” array key.
  • When you call the redirect helper with no parameters, an instance of Illuminate\Routing\Redirector is returned, allowing you to call any method on the Redirector instance.
Route::get('user/profile', ['as' => 'profile', function () {
   //
}]);

Note

  • Here, we have given the name “profile” to a route “user/profile”.

Example:

laravel , laravel framework , laravel documentation , laravel tutorial , laravel install , laracasts

Step 1:

  • Create a view called test.php and save it at resources/views/test.php.
<html>
   <body>
      <h1>Example of Redirecting to Named Routes</h1>
   </body>
</html>

Step 2:

  • In routes.php, we have set up the route for test.php file. We have renamed it to “testing”.
  • We have also set up another route “redirect” which will redirect the request to the named route “testing”.
app/Http/routes.php
Route::get('/test', ['as'=>'testing',function(){
   return view('test2');
}]);
Route::get('redirect',function(){
   return redirect()->route('testing');
});

Step 3:

  • Visit the following URL to test the named route example.
  • http://localhost:8000/redirect

Step 4:

  • After execution of the above URL, you will be redirected to http://localhost:8000/test as we are redirecting to the named route “testing”.
laravel , laravel framework , laravel documentation , laravel tutorial , laravel install , laracasts

Step 5:

  • After successful execution of the URL, you will receive the following output −
 laravel redirections output

Redirecting to Controller Actions:

  • Not only named route but we can also redirect to controller actions.
  • We need to simply pass the controller and name of the action to the action method as shown in the following example.
  • If you want to pass a parameter, you can pass it as second argument of action method.
return redirect()->action(‘NameOfController@methodName’,[parameters]);
laravel , laravel framework , laravel documentation , laravel tutorial , laravel install , laracasts

Example

Step 1

  • Execute the below command to create a controller called RedirectController.
    php artisan make:controller RedirectController --plain

Step 2

  • After successful execution, you will receive the following output

Step 3

  • Copy the following code to file app/Http/Controllers/RedirectController.php.
app/Http/Controllers/RedirectController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class RedirectController extends Controller {
   public function index(){
      echo "Redirecting to controller's action.";
   }
}
laravel , laravel framework , laravel documentation , laravel tutorial , laravel install , laracasts

Step 4

  • Add the following lines in app/Http/routes.php.
app/Http/routes.php
Route::get('rr','RedirectController@index');
Route::get('/redirectcontroller',function(){
   return redirect()->action('RedirectController@index');
});

Step 5

  • Visit the following URL to test the example.
  • http://localhost:8000/redirectcontroller
laravel , laravel framework , laravel documentation , laravel tutorial , laravel install , laracasts

Step 6

  • The output will appear as shown in the following image.

Redirecting with Flashed Session Data:

  • Redirecting to a new URL and flashing data to the session are usually done at the same time.
  • Typically, this is done after successfully performing an action when you flash a success message to the session.
  • For convenience, you may create a RedirectResponse instance and flash data to the session in a single, fluent method chain
Route::post('user/profile', function () {
                    // Update the user's profile...

                    return redirect('dashboard')->with('status', 'Profile updated!');
                    });
  • After the user is redirected, you may display the flashed message from the session.
  • For example, using Blade syntax:
@if (session('status'))
                     <div class="alert alert-success">
                     {{ session('status') }}
                     </div>
                     @endif

This tutorial is used to learn laravel and also provides guidance on laravel book , laravel books , laravel hosting , laravel programming , laravel server php , laravel server , laravel development server , start laravel server , laravel getting started , laravel programmer , php with laravel for beginners , what is laravel framework in php , up and running with laravel , php framework laravel , getting started with laravel , what is laravel framework , laravel applications , what is laravel in php , laravel hosting , laravel framework , php laravel framework , latest framework in php

Related Searches to Laravel Redirect | Laravel - Redirections