我发现 Laravel (5.4) flash session 有一个非常奇怪的问题。
假设我有 2 个表单,注册和登录。每个表单在其控制器中都有 laravel 验证。问题是:
- 重定向返回后不会出现验证错误消息(即使当我使用 $errors->any() 检查会话时会话也是空的)
- 但是,如果我切换重定向(登录验证错误重定向到注册;并且注册验证错误重定向到登录),就会出现错误消息。
- 这些情况只发生在手机浏览器中。
我已经尝试过解决它:
- 手机清空历史
- 更改 sesson 驱动程序(cookie、数据库、文件)
但他们没有工作。
这是我的注册控制器:
$inputs = $request->all();
$rules = array(
'name' => 'required|regex:/^[A-z ]+$/',
'email' => 'required|email|unique:users,email',
'phone' => 'required',
'password' => 'required|confirmed|min:6',
);
$validator = Validator::make($inputs, $rules);
if ($validator->fails())
{
return redirect('sign-up')->withInput()->withErrors($validator);
}
这是我的登录控制器
$inputs = $request->all();
$rules = array(
'email' => 'required|email',
'password' => 'required|min:6',
);
$validator = Validator::make($inputs, $rules);
if ($validator->fails())
{
return back()->withInput()->withErrors($validator);
}
任何人都可以帮忙吗?