【问题标题】:How to use session in Laravel 5如何在 Laravel 5 中使用会话
【发布时间】:2019-12-08 07:41:43
【问题描述】:

我正在尝试保存一些会话变量,但返回后 laravel 不保存会话变量。我的代码哪里出了问题?

在 web.php 中:

Route::get('/login', function(){
   return view(frontend.login);
 });
 Route::post('/login', function(Request $request){
   $control = "Some sql codes";
   if($control > 0){
       $user = "Some sql codes";
       $request->session()->start();
       $request->session()->put('user_id', $user->id);
       $request->session()->save();
       return view('frontend.logged_in);
   }
   else{
       return view('frontend.index);
   }
});

我知道我应该使用控制器,但这是一个临时代码,在这里应该可以正常工作(对吗?)。而当我不使用“return view('frontend.logged_in);”它保存会话变量,但是当我尝试返回时,它不会保存会话变量。

注意:如果我为会话驱动程序选择“文件”,这些代码就可以正常工作。但是当我尝试选择 cookie 代码时不起作用..

【问题讨论】:

    标签: php session laravel-5


    【解决方案1】:

    我相信是因为这条线:

    $request->session()->start();
    

    您不需要手动启动会话,Laravel 会为您维护会话。

    改用以下代码:

    if($control > 0){
       $user = "Some sql codes";
       session(['user_id'=>$user->id]);
       return view('frontend.logged_in);
    }
    

    看看这是否适合你。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-26
      • 1970-01-01
      • 2017-06-22
      • 2015-07-31
      • 2015-06-03
      • 2015-09-01
      • 1970-01-01
      • 2015-05-01
      相关资源
      最近更新 更多