Laravel 5.4.3会话不适用于新请求

时间:2018-07-06 06:57:42

标签: php session laravel-5

我正在使用jQuery Ajax函数来验证用户并创建会话。在laravel控制器中,我有以下代码。

        if( isset( $_POST['email'] ) )
        {
            $email      = $_POST['email'];
            $password   = $_POST['password'];

            $results =  DB::table('table')->where([
                            ['school_email', '=', $email ],
                            ['school_password', '=', $password],
                        ])->get() ;

            if( $results -> count() ==  0 )
            {
                echo json_encode( array('data' => '0' ) ); exit;
            }
            else
            {
                $user =  $results[0] ;
                session(['users' => $user ]);
                $request    ->  session()   ->  put('two', 'test');
                echo json_encode( array( 'data' => '1' ) );
                exit;
    }

会话是在设置会话变量之后打印时设置的。但是当我刷新页面或将用户重定向到另一个网址时。会话即将作为空变量。 我使用默认设置的文件会话,并且目录(存储)可写。我确实将server.php更改为index.php,并将htaccess从公共目录复制到了根目录,只是为了访问我的本地站点而无需在url中编写public。例如http://localhost/site2/login之前的

http://localhost/site2/public/login

1 个答案:

答案 0 :(得分:0)

我们需要使用$ request-> session()-> save();在为会话变量分配值之后。奇怪的是,它在文档中没有指向任何地方。