为什么这个登录只返回失败?Laravel 5.3


Why is this login only returning failed? Laravel 5.3

我在这里有一个自定义的登录代码。如你所见,这很简单。我们可以得到用户名,但由于某些原因,它永远不会成功,我总是打印失败。

public function postSignIn(Request $request){
        $val = DB::table('ministry')->where('Username', Input::get('Username'))->first();
        if ($val && Hash::check(
            Input::get('Password'), $val->Password)
            ) {
            return redirect()->route('agencydash');
        } return 'failed';

我不熟悉Hash facade是如何工作的,所以调试起来很棘手。

创建用户时请确保密码已加密

$password = Hash::make('yourpassword');
然后

public function postSignIn(Request $request){
        $val = DB::table('ministry')->where('Username', $request->get('Username'))->first();
        if ($val && Hash::check(
            Input::get('Password'), $val->Password)
            ) {
            return redirect()->route('agencydash');
        } return 'failed'; }

,如果你仍然得到错误或失败,那么在原始查询后打印print_r($val);,这样你就可以检查查询是否失败