Chris Rogers
Chris Rogers

Reputation: 1522

Laravel 5.4 Session not storing

I am trying to get a simple session to store a value but am having trouble saving it. I have looked around at similar posts about this and tried their suggestions without any luck. Here is what I have done:

Use "web" in middlewareGroups

Route::group(['middlewareGroups' => ['web']], function() {
    ...

Use "web" in middleware and also manually

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

and

$this->middleware('web');

UsedSession::put, session() global and $request->session() and even $_SESSION

Found this article and tried the answer but still nothing. I am using files to store my sessions

Added the following to my Kernel.php

protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    \Barryvdh\Cors\HandleCors::class,
    \Illuminate\Session\Middleware\StartSession::class,
    \Illuminate\View\Middleware\ShareErrorsFromSession::class
];

protected $middlewareGroups = [
    'web' => [
        \App\Http\Middleware\EncryptCookies::class,
        \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
        \Illuminate\Session\Middleware\StartSession::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
        \App\Http\Middleware\VerifyCsrfToken::class,
        \Illuminate\Routing\Middleware\SubstituteBindings::class
    ],

    'api' => [
        \App\Http\Middleware\EncryptCookies::class,
        \Illuminate\Session\Middleware\StartSession::class,
        'throttle:60,1',
        'bindings',
    ],
];

And yet nothing! Perhaps you guys can shed some light? Many thanks.

Upvotes: 0

Views: 2822

Answers (1)

Digvijay
Digvijay

Reputation: 8927

I was facing the same problem in Laravel 5.4
I found that adding the save method solved the problem.

Session::put('key', $value);
Session::save();

Hope it helps. Cheers.

Upvotes: 2

Related Questions