【发布时间】:2018-12-14 17:22:23
【问题描述】:
我正在使用 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;
}
在设置会话变量后打印会话时设置会话。但是当我刷新页面或将用户重定向到另一个 URL 时。 session 以空变量的形式出现。 我正在使用具有默认设置的文件会话,并且目录(存储)是可写的。我确实将 server.php 更改为 index.php 并将 htaccess 从公共目录复制到 root 只是为了访问我的本地站点而无需在 url 中写入 public。例如 http://localhost/site2/login 之前
【问题讨论】:
-
"只是为了访问我的本地站点而无需在 url 中写入 public" 如果您 set up Laravel the correct way 则无需“将 server.php 更改为索引。 php"
-
我在一个论坛上也看到了这种方法,有人关注。您认为这会导致会话出现问题吗?