Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

madiri's avatar

Session not working in laravel5

I am using session in laravel 5 its storing value but when i redirect to another route and check if the stored session exists its not showing stored session here's my code

Controller.php
public function index()
     {
$checkadminloginexists =Session::get('adminid');   
  
   
     if(!empty($checkadminloginexists))
      {
      return Redirect::to('/admin/dashboard');
      }
      else
        {
      return Redirect::to('/admin/login');
      }
      }

       public function login()
       {
       $checkadminloginexists = Session::get('adminid'); 
       if(!empty($checkadminloginexists))
       {
        return Redirect::to('/admin/dashboard');
       }
       else
{
$adminid=1;
  session(['adminid' =>$adminid]);

}
       
        }
route.php
<?php

/*
|--------------------------------------------------------------------------
| Routes File
|--------------------------------------------------------------------------
|
| Here is where you will register all of the routes in an application.
| It's a breeze. Simply tell Laravel the URIs it should respond to
| and give it the controller to call when that URI is requested.
|
*/
Route::get('/', function () {
    return view('admin.dashboard');
});

Route::get('/admin/', 'SuperadminController@Index');
Route::get('/admin/dashboard', 'SuperadminController@dashboard');
Route::get('/admin/editprofile', function () {
    return view('admin.editprofile');
});
Route::get('/admin/login', 'SuperadminController@login');
Route::get('/admin/adduser', 'SuperadminController@startsession1');
Route::get('/admin/forgotpassword', function () {
    return view('admin.forgotpassword');
});
Route::get('/admin/viewusers', function () {
    return view('admin.viewusers');
});
Route::get('/admin/viewinvoices', function () {
    return view('admin.viewinvoices');
});
Route::get('/admin/inbox', function () {
    return view('admin.inbox');
});

Route::get('/admin/outbox', function () {
    return view('admin.outbox');
});
Route::get('/admin/draft', function () {
    return view('admin.draft');
});
Route::get('/admin/trash', function () {
    return view('admin.trash');
});
Route::get('/admin/viewmessage', function () {
    return view('admin.viewmessage');
});
Route::get('/admin/viewinvoice', function () {
    return view('admin.viewinvoice');
});
Route::get('/admin/createinvoice', function () {
    return view('admin.createinvoice');
});
Route::post('/admin/login', 'SuperadminController@login');

/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| This route group applies the "web" middleware group to every route
| it contains. The "web" middleware group is defined in your HTTP
| kernel and includes session state, CSRF protection, and more.
|
*/

Route::group(['middleware' => ['web']], function () {
    //
    

});

Route::group(['middleware' => 'web'], function () {
    Route::auth();

});

0 likes
1 reply
zachleigh's avatar

In Laravel 5.2, you need to nest your routes in the web middleware to take advantage of session.

Route::group(['middleware' => ['web']], function () {
    // your routes 
});
1 like

Please or to participate in this conversation.