laravel 5.2 - 检查字段是否为空
laravel 5.2 - check if field is empty or not
我想检查某些字段是否为空。如果为空,则用户可以在不更改当前密码的情况下更新配置文件。
如果不为空,则存储密码的新值。我的控制器是:
public function storeUpdatedUser(Request $request)
{
$this->validate($request, ['email' => 'required', 'name' => 'required', 'surname' => 'required', ]);
$user = User::findOrFail(Auth::user()->id);
$user->update($request->all());
$new_password = false;
if($new_password != ""){
$new_password = bcrypt($request->new_password);
$user->password = $new_password;
}
$user->save();
Session::flash('flash_message', 'User updated!');
return redirect('/');
}
但不起作用,如果我输入一些值,密码不会更改
图片解释更好
试试这个:
public function storeUpdatedUser(Request $request)
{
$this->validate($request, ['email' => 'required', 'name' => 'required', 'surname' => 'required', ]);
$user = User::findOrFail(Auth::user()->id);
$user->update($request->all());
if(!empty($request->input('new_password'))) {
$new_password = bcrypt($request->input('new_password'));
$user->password = $new_password;
$user->save();
}
Session::flash('flash_message', 'User updated!');
return redirect('/');
}
这在 Laravel 5.7 中对我有用:
$user = Auth::user();
$user->update($request->filled('password') ? $request->all() : $request->except(['password']));
Laravel 检查请求输入是否存在
if($request->has('new_password ')) {
dd('new_password is exists.');
} else {
dd('new_password is not exists.');
}
Laravel 检查请求输入字段是否为空
if($request->filled('new_password ')) {
dd('new_password is not empty.');
} else {
dd('new_password is empty.');
}
Laravel 检查请求输入字段是否为空
if(!empty($request->input('new_password '))) {
dd('new_password is not empty.');
} else {
dd('new_password is empty.');
}
我想检查某些字段是否为空。如果为空,则用户可以在不更改当前密码的情况下更新配置文件。 如果不为空,则存储密码的新值。我的控制器是:
public function storeUpdatedUser(Request $request)
{
$this->validate($request, ['email' => 'required', 'name' => 'required', 'surname' => 'required', ]);
$user = User::findOrFail(Auth::user()->id);
$user->update($request->all());
$new_password = false;
if($new_password != ""){
$new_password = bcrypt($request->new_password);
$user->password = $new_password;
}
$user->save();
Session::flash('flash_message', 'User updated!');
return redirect('/');
}
但不起作用,如果我输入一些值,密码不会更改
图片解释更好
试试这个:
public function storeUpdatedUser(Request $request)
{
$this->validate($request, ['email' => 'required', 'name' => 'required', 'surname' => 'required', ]);
$user = User::findOrFail(Auth::user()->id);
$user->update($request->all());
if(!empty($request->input('new_password'))) {
$new_password = bcrypt($request->input('new_password'));
$user->password = $new_password;
$user->save();
}
Session::flash('flash_message', 'User updated!');
return redirect('/');
}
这在 Laravel 5.7 中对我有用:
$user = Auth::user();
$user->update($request->filled('password') ? $request->all() : $request->except(['password']));
Laravel 检查请求输入是否存在
if($request->has('new_password ')) {
dd('new_password is exists.');
} else {
dd('new_password is not exists.');
}
Laravel 检查请求输入字段是否为空
if($request->filled('new_password ')) {
dd('new_password is not empty.');
} else {
dd('new_password is empty.');
}
Laravel 检查请求输入字段是否为空
if(!empty($request->input('new_password '))) {
dd('new_password is not empty.');
} else {
dd('new_password is empty.');
}