if (Registration::where(['email', '=', $email, 'password', '=', $pwd, 'is admin', '=', 1]))
{
Session()->put('admin email', $email);
return redirect('admin');
}
else
{
if (Registration::where(['email', '=', Input::get('email'), 'password', '=', Input::get('password'), 'is admin', '=', 0]))
{
Session()->put('email', $email);
return redirect('/');
}
}
任何未注册的用户都可以登录,而不先检查是否可以,如果可以更改重定向路径,则首先可以确定条件是否可以工作
答案 0 :(得分:1)
首先,您的where子句看起来有些奇怪。尝试像这样应用它们:
$condition1 = Registration::where([
['email', '=', $email],
['password', '=', $pwd],
['is admin', '=', 1],
])->count();
$condition2 = Registration::where([
['email', '=', Input::get('email')],
['password', '=', Input::get('password')],
['is admin', '=', 0],
])->count();
if ($condition1)
{
Session()->put('admin email', $email);
return redirect('admin');
}
else
{
if ($condition2)
{
Session()->put('email', $email);
return redirect('/');
}
}
您也可以这样做:
$condition1 = Registration
::where('email', '=', $email)
->where('password', '=', $pwd)
->where('is admin', '=', 1)
->count();
$condition2 = Registration
::where('email', '=', Input::get('email'))
->where('password', '=', Input::get('password'))
->where('is admin', '=', 0)
->count();
// ...