繁体   English   中英

凭据为true时,Auth :: attempt返回false

[英]Auth::attempt returns false when credentials are true

我为此花费了无数小时。 通过互联网浏览,找不到解决方案。 数据正在通过表单传递,但不会通过数据库进行身份验证。 密码在注册时也会被散列。 我已经转储了输入,并且凭证已发布,但将通过数据库进行身份验证。 感谢您的任何帮助,谢谢!

路线

Route::get('/login', function() {
return view('pages.login');
});
Route::get('/register', function() {
return view('pages.register');
});

Route::post('/register_action', [
'uses' => 'RegisterController@store',
'as' => 'signup'
]);
Route::post('/login_action', [
'uses' => 'LoginController@LogIn',
'as' => 'signin'
]);
Route::get('/dashboard', [
'uses' => 'RegisterController@getDashboard',
'as' => 'dashboard'
]);

登录控制器

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\User;
use Input;

class LoginController extends Controller
{
public function LogIn(Request $request) {
    $data = array(
        'email' => Input::get('useremail'),
        'password' => Input::get('userpass'),
    );
    dd($data);

    if(Auth::attempt($data)) {
        return redirect()->route('dashboard');
    }else {
        echo "Fail";
    }
}
}

注册控制器

namespace App\Http\Controllers;

use App\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Input;


class RegisterController extends Controller
{
public function getDashboard() {
    return view('pages.dashboard');
}

public function store(Request $request) {
    $username = $request['username'];
    $email = $request['email'];
    $first_name = $request['userfname'];
    $last_name = $request['userlname'];
    $password = bcrypt($request['password']);

    $user = new User();
    $user->email = $email;
    $user->username = $username;
    $user->firstname = $first_name;
    $user->lastname = $last_name;
    $user->password = $password;

    $user->save();

    return redirect()->route('dashboard');

}

}

您应该检查数据库迁移。密码静默至少需要120个字符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM