登录功能laravel不会总是将我重定向到主页


class userController extends Controller
{
//
function login(Request $req)
{
$user = User::Where(['email'=>$req->email])->first();
if($user || Hash::check($req->password, $user->$password))
{
return 'Username or password not matched';
}
else {
$req->session('user', $user); 
return redirect('/');
}
}
}

对于手动身份验证,attempt()可能比Hash::check()更好

use Auth;
class userController extends Controller
{
function login(Request $req)
{
$credentials = $req->only('email', 'password');
if (Auth::attempt($credentials)) {
$req->session()->regenerate();
return redirect()->intended('/');
}
else {
return 'Username or password not matched';
}
}
}

读取手动身份验证用户有关更多详细信息,

我删除了$password并将其替换为password,并生成如下代码:

function login(Request $req)
{
$user= User::where(['email' => $req->email])->first();
if (!$user || !Hash::check($req->password, $user->password)) {
return "Username or password is not matched";
} else {
$req->session()->put('user',$user);
return redirect('/');
}
}

最新更新