php - Laravel 5.0::更改密码后无法登录

标签 php laravel authentication laravel-5

我是 Laravel 的绝对初学者。我目前正在使用 Laravel 5.0

通过默认的密码重置页面更新密码后,我无法登录。

一切都应该按照我的方式工作。 重置密码后,我看到数据库中更新了密码;电子邮件和重置密码的链接将发送到指定的电子邮件地址。 但是,我无法使用刚刚更新的新密码登录。

如果有人遇到过这种问题,能给我一些建议吗?

英语不是我的第一语言,所以如果这个问题对您来说没有意义或需要更多信息,请留下您的评论! 任何意见,将不胜感激!提前致谢!

Route.php

// Password reset link request routes...
Route::get('password/email', 'Auth\PasswordController@getEmail');
Route::post('password/email', 'Auth\PasswordController@postEmail');

// Password reset routes...
Route::get('password/reset/{token}', 'Auth\PasswordController@getReset');
Route::post('password/reset', 'Auth\PasswordController@postReset');

PasswordController.php

<?php namespace App\Http\Controllers\Auth;

 use App\Http\Controllers\Controller;
 use Illuminate\Contracts\Auth\Guard;
 use Illuminate\Contracts\Auth\PasswordBroker;
 use Illuminate\Foundation\Auth\ResetsPasswords;

class PasswordController extends Controller {
    use ResetsPasswords;

    public function __construct(Guard $auth, PasswordBroker $passwords)
    {
        $this->auth = $auth;
        $this->passwords = $passwords;

        $this->middleware('guest');
     }

 }

最佳答案

我一直在寻找答案,没有找到解决方案,但后来我不得不这样解决。

您的密码已从您的用户模型中进行两次哈希处理,当您重置密码时,请将其中一个注释掉。

在 ResetsPassword.php 文件中,我删除了哈希,但在我的用户模型中保留了 bcrypt,它开始工作得很好

 protected function resetPassword($user, $password)
{
   // $user->password = Hash::make($password);
    $user->password = $password;

    $user->setRememberToken(Str::random(60));

    $user->save();

    event(new PasswordReset($user));

    $this->guard()->login($user);
}

//用户模型

  public function setPasswordAttribute($password)
{
    $this->attributes['password'] = bcrypt($password);
}

关于php - Laravel 5.0::更改密码后无法登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37152260/

相关文章:

php - 参数 1 传递的 t 是 Illuminate\Http\Request 的实例,数组给定

java - 如何使用 SAML 在 Java 中实现 SSO?

python - 原子饲料 : script to combine multiple <author> items into one?

php - Wordpress 插件处于事件状态但未在管理工具中检查

javascript - 如何从mysql获取id到模态?

php - 如何在多个表上设置一个FK(外键)?

php - Laravel 查询生成器限制

php - laravel php pbkdf2 登录验证

python - 我可以手动 ssh2 到远程主机,但 paramiko 不能,为什么?

authentication - 微服务认证策略