2016-10-22 3 views
0

Um das Passwort zu ändern, ich geben Sie den aktuellen password.For das korrekte Passwort auch ein Fehler msgWie kann ich überprüfen, ob das eingegebene Passwort das aktuelle Passwort ist?

public function passwordupdate (Request $ request) angezeigt wird {

$user=user::find(Auth::user()->id); 

    $validator=Validator::make($request->all(), [ 
     //'password' => 'required|confirmed|min:6|max:14' 
     'cpassword'=> 'required|confirmed|min:6|max:14'      
    ]); 
    if($validator->fails()){ 
     return redirect()->back()->withErrors(['cpassword'=>'Please check the password you given']); 
    }else{ 
     $user->cpassword=bcrypt($request->cpassword); 
     $user->save(); 
     return redirect()->back(); 
    } 

} 
+0

Hey bitte eine Antwort als richtig markiert, wenn es irgendein –

Antwort

0

Sie Hash::check() Methode verwenden kann. Zum Beispiel, wenn Sie eingegebene Passwort mit aktuellem Benutzer vergleichen:

if (Hash::check($request->password, auth()->user()->password) { 
    // Entered password is correct. 
1
  1. Zuerst Sie use Illuminate\Support\Facades\Hash;

  2. zu überprüfen, ob die alten brauchen Kennwort, das vom Benutzer eingegeben wurde, können Sie Hash::check() verwenden. Diese Funktion benötigt 2 Parameter. Der erste ist der einfache String und der zweite ist das Hash-Passwort (altes Passwort).

können Sie altes Passwort abrufen, indem Auth::user()->password so, wenn Sie Bedingung

seien
if(Hash::check($request['oldpass'], $user->password)){ 
    //insert the new password 
    Auth::user->update([ 
    'password'=>bcrypt($data['newpass']) 
    ]); 
    Auth::user->save(); 
} 

P. S Hash::check() return true oder false

Verwandte Themen