Laravel Auth ::尝试继续返回false

时间:2014-05-27 10:45:00

标签: php authentication laravel

我已经制作了一个登录脚本,我以前曾多次使用它,并且它一直工作得非常好,就像昨天这个项目一样。

我对这个项目所做的唯一真正的改变就是更新了一些东西,因为我认为是移民抱怨它已经超过30天了。我只是按照指示。

然而,现在脚本本身,我根本没有触及过。 我得出的结论是Auth::attempt失败了,因为我知道脚本收到信息并连接到数据库,我知道传递给数据库的信息是正确的。仍然会返回false。

我的数据库中的密码列是一个varchar(100),正如我前面提到的那样,几天前工作得很好。读取其他线程,它必须至少60.我只是找不到错误,任何帮助将是非常appriciated。

public function doLogin()
{
    $rules = array(
        'username' => 'required|alphaNum|min:6|max:16',
        'password' => 'required|alphaNum|min:6|max:16'
        );


    $validator = Validator::make(Input::all(), $rules); 

    if ($validator->fails()) {
        if(Request::ajax()){
            return Response::json($validator->getMessages());
        } else {
            return Redirect::to('index')->withErrors($validator)->withInput(Input::except('password'));
        }
        return Redirect::to('index')
            ->withErrors($validator)
            ->withInput(Input::except('password'));
    } else {
        $userdata = array( 
            'username' => Input::get('username'),
            'password' => Input::get('password')
        );

        if (Auth::attempt($userdata)) {
            Session::set('user', $userdata['username']);
            $username = $userdata['username'];
            $userID = $this->get_id_by_string('users', 'username', $username);
            Session::set('user_id', $userID);
            return 'Inloggad';
        } else {
            return 'Fel användarnamn eller lösenord.';
        }
    }
}

它总是返回字符串Fel användarnamn eller lösenord.

0 个答案:

没有答案