So überprüfen Sie, ob das eingegebene Passwort mit dem Datenbank-Hash-Passwort in Laravel 8 übereinstimmt
P粉129731808
2023-08-28 14:25:49
<p>Wie überprüfe ich das Benutzerpasswort aus einer bestimmten Anfrage in Laravel? Wie wird das Passwort mit dem in der Datenbank gespeicherten Passwort-Hash verglichen?
**
Das ist mein Controller
**</p>
<pre class="brush:php;toolbar:false;"><?php
Namespace AppHttpControllers;
benutze IlluminateHttpRequest;
verwenden Sie IlluminateSupportFacadesDB;
Die Klasse MainController erweitert Controller
{
Funktion login1(Request $request){
$username = $request->input('username');
$password = $request->input('password');
$data = DB::table('users')->where(['username'=>$username, 'password'=>$password])->first();
if($data == null){
echo „Fehler“;
$notification = array(
'message' => 'Der Benutzer existiert nicht! ',
'alert-type' => 'error'
);
return back()->with($notification);
}
anders{
$request->session()->put('user',$data);
Return Redirect('Dashboard');
}
}}</pre></p>
像这样
$encrypted = Crypt::encrypt('password_name_variable');
基本上,你想要做的是:
users
表中具有给定用户名的用户。所以,你想要首先查询具有给定用户名的用户。然后,在检索到用户并验证其存在之后,你可以检查提供的密码是否与检索到的模型上的哈希密码匹配。
然而,在Laravel中有内置的功能可以实现这一点,根据你的需求,这样做可能更简单:
https://laravel.com/api/8.x/Illuminate/Support/Facades/Auth.html#method_attempt