Я пробовал искать Google и пытался несколько методов. Ни один из них не работает: auth::attempt
все еще возвращает false. Мой регистрационный код приведен ниже; в моем AuthController
у меня есть:Laravel Auth :: попытка всегда возвращает false
protected function create(array $data)
{
$datetime = new \DateTime();
$datetime->format('Y-m-d H:i:s');
$datetime->getTimestamp();
return User::create([
'country_id' => 1, // default to malaysia
'user_name' => $data['user_name'],
'facebook_id' => null,
'steam_link' => null,
'password' => Hash::make($data['password']),
'extra_information' => null,
'remember_token' => null,
'email' => $data['email'],
'status_id' => 1, // active
'is_verified' => false, // false
'user_type_id' => 2, // normal user
'account_status_id' => 1, // pending
'confirmation_code' => str_random(30),
'created_at' => $datetime
]);
}
public function postRegister(Request $request)
{
$validator = $this->validator($request->all());
if ($validator->fails()) {
$this->throwValidationException(
$request, $validator
);
}
$user = $this->create($request->all());
Mail::send('emails.registration_verification', ['user' => $user], function ($m) use ($user)
{
$m->from('[email protected]', 'www.myapps.com');
$m->to($user->email, $user->user_name)->subject('Verify your myappsaccount.');
});
return view('auth.registration_success')->with('user_name',$user->user_name)->with('email', $user->email);
}
public function emailVerification($confirmation_code)
{
if (!$confirmation_code)
{
return Redirect::route('/errors/500');
}
$user = User::whereConfirmationCode($confirmation_code)->first();
if (!$user)
{
return Redirect::route('/errors/500');
}
$user->account_status_id = 2; // active
$user->confirmation_code = null;
$user->save();
return view('auth.verification_success')->with('user',$user);
}
public function postLogin(Request $request)
{
$userdata = array(
'email' => $request->email,
'Password' => $request->password
);
if (Auth::attempt($userdata,true)) {
echo 'test';
}
else {
var_dump($userdata);
}
}
Я хэшируются свой пароль, соответственно, я также изменил столбец пароля от 60 до 255, но до сих пор не удается Войти.
Ожидаемый рабочий процесс - это регистры пользователей, система отправляет им электронное письмо для проверки. Пользователь нажимает на ссылку в письме, которое вызовет метод emailVerification
. По завершении проверки пользователь должен войти в систему.
Я ничего не пропустил?
Я не уверен, но вы пытались сменить ключ «Пароль» на «пароль» (все строчные буквы)? –
Он должен быть строчным, а столбец пароля должен содержать только 60 символов. –
Привет ... пароль все в нижнем регистре ... –