我可以在 laravel 和 mongodb 中更新我的密码吗?
Can I update my password in laravel and mongodb?
我正在 laravel 编码,我必须更新我的密码,我做了一些编码但它显示了这个错误
Creating default object from empty value
这是我在控制器中的代码
public function passwordChange(Request $request, $email)
{
$user = User::find($email);
$user->password = $request->get('password');
$user->save();
return redirect('home');
}
我在会话中通过了电子邮件
这是我的 Blade 文件的代码
<section id="wrapper">
<div class="login-register" style="background-image:url(../assets/images/background/pic.jpg);">
<div class="login-box card">
<div class="card-body">
@if(Session::has('key'))
{{Session::get('key')['email']}}
@endif
<form class="form-horizontal form-material" id="loginform" method="POST" action="{{ url('reset-password', 'email')}}">
@csrf
<h3 class="box-title m-b-20">{{__('Recover Password')}}</h3>
<div class="form-group ">
<div class="col-xs-12">
<input class="form-control" type="password" required name="password" placeholder="New Password">
</div>
</div>
<div class="form-group">
<div class="col-xs-12">
<input class="form-control" type="password" required placeholder="Confirm Password">
</div>
</div>
<div class="form-group text-center p-b-10">
<div class="col-xs-12">
<button class="btn btn-info btn-lg btn-block text-uppercase waves-effect waves-light" type="submit">
{{__('Set New Password')}}</button>
</div>
</div>
</form>
</div>
</div>
</div>
</section>
这是我的路线文件
Route::post('reset-password/{email}', 'AdminController@passwordChange');
Collection 的 ::find()
方法搜索 id
或指定的模型主键,您应该尝试:
::where('email', $email)->first()
问题是您使用 find
方法查找电子邮件,因为 find()
方法通过 $primaryKey
属性 查找记录。取而代之的是,你可以这样做
$user = User::where('email',$email)->first()
$user->password = $request->get('password');
$user->save();
我建议您以哈希形式保存密码。
你可以使用 bcrypt
辅助函数或者你可以通过 Hash::make($yourPassword)
我正在 laravel 编码,我必须更新我的密码,我做了一些编码但它显示了这个错误
Creating default object from empty value
这是我在控制器中的代码
public function passwordChange(Request $request, $email)
{
$user = User::find($email);
$user->password = $request->get('password');
$user->save();
return redirect('home');
}
我在会话中通过了电子邮件
这是我的 Blade 文件的代码
<section id="wrapper">
<div class="login-register" style="background-image:url(../assets/images/background/pic.jpg);">
<div class="login-box card">
<div class="card-body">
@if(Session::has('key'))
{{Session::get('key')['email']}}
@endif
<form class="form-horizontal form-material" id="loginform" method="POST" action="{{ url('reset-password', 'email')}}">
@csrf
<h3 class="box-title m-b-20">{{__('Recover Password')}}</h3>
<div class="form-group ">
<div class="col-xs-12">
<input class="form-control" type="password" required name="password" placeholder="New Password">
</div>
</div>
<div class="form-group">
<div class="col-xs-12">
<input class="form-control" type="password" required placeholder="Confirm Password">
</div>
</div>
<div class="form-group text-center p-b-10">
<div class="col-xs-12">
<button class="btn btn-info btn-lg btn-block text-uppercase waves-effect waves-light" type="submit">
{{__('Set New Password')}}</button>
</div>
</div>
</form>
</div>
</div>
</div>
</section>
这是我的路线文件
Route::post('reset-password/{email}', 'AdminController@passwordChange');
Collection 的 ::find()
方法搜索 id
或指定的模型主键,您应该尝试:
::where('email', $email)->first()
问题是您使用 find
方法查找电子邮件,因为 find()
方法通过 $primaryKey
属性 查找记录。取而代之的是,你可以这样做
$user = User::where('email',$email)->first()
$user->password = $request->get('password');
$user->save();
我建议您以哈希形式保存密码。
你可以使用 bcrypt
辅助函数或者你可以通过 Hash::make($yourPassword)