繁体   English   中英

使用laravel将数据库中的普通密码转换为加密密码?

[英]Converting plain password IN database to encrypted password using laravel?

我正在尝试将数据库中的纯文本密码转换为加密密码,但不是没有在数据库中保存加密密码?

我怎样才能做到这一点 ?

请查看此用户表https://ibb.co/7SKTbqW

控制器

public function registeraction(Request $request)
{
    $this->validate($request, [
        'name' => 'required',
        'email' => 'required',
        'password' => 'required|alphaNum|min:6',
    ]);

    $name = $request->get('name');
    $email = $request->get('email');
    $password = bcrypt($request->get('password')); 

    $user = User::create(request(['name', 'email','password']));      
    $user->setRememberToken(Str::random(60));
    $user->save();

    if ($user) {
        // Authentication passed...
        return redirect()->to('/');
    }
}

尝试Hash:make

use Illuminate\Support\Facades\Hash;

$password = Hash::make($request->get('password'));

在您的代码中,您正在从$request中检索password值并修改该值。

$password = bcrypt($request->get('password')); 

但是,当您创建用户时,您将再次从$request检索未修改的原始password值。

$user = User::create(request(['name', 'email','password']));

相反,这一行应该是:

$user = User::create(compact('name', 'email','password'));

暂无
暂无

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

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