Laravel’de şifre güncelleme işlemi nasıl yapılır?
1.Formu hazırlıyoruz:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<form class="form-horizontal" method="post" action="{{ url('/admin/update-pwd') }}" name="password_validate" id="password_validate" novalidate="novalidate">{{ csrf_field() }} <div class="control-group"> <label class="control-label">Mevcut Şifre</label> <div class="controls"> <input type="password" name="current_pwd" id="current_pwd" /> <span id="chkPwd"></span> </div> </div> <div class="control-group"> <label class="control-label">Yeni Şifre</label> <div class="controls"> <input type="password" name="new_pwd" id="new_pwd" /> </div> </div> <div class="control-group"> <label class="control-label">Şifreyi Onayla</label> <div class="controls"> <input type="password" name="confirm_pwd" id="confirm_pwd" /> </div> </div> <div class="form-actions"> <input type="submit" value="Şifreyi Güncelle" class="btn btn-success"> </div> </form> |
2.Yönlendirmeyi ayarlıyoruz:
1 |
Route::match(['get','post'],'/admin/update-pwd','AdminController@updatePassword'); |
3.Fonksiyonu yazıyoruz:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
public function updatePassword(Request $request){ if($request->isMethod('post')){ $data = $request->all(); $check_password = User::where(['email' => Auth::user()->email])->first(); $current_password = $data['current_pwd']; if(Hash::check($current_password,$check_password->password)){ $password = bcrypt($data['new_pwd']); User::where('id','1')->update(['password'=>$password]); return redirect('/admin/settings')->with('flash_message_success','Şifre Güncellendi!'); }else { return redirect('/admin/settings')->with('flash_message_error','Mevcut Şifre Yanlış!'); } } } |