In profile.blade, while updating the inputs in the profile getting Error The phone has already been taken.
Controller:
public function profileUpdate(Request $request)
{
$user = Auth::user();
$messages = [
'user_name.required' => __('The User name field is required.'),
'last_name.required' => __('The Last Name field is required.'),
'first_name.required' => __('The First Name field is required.'),
'phone.required' => __('The Phone field is required.'),
];
$request->validate([
'first_name' => 'required|max:255',
'last_name' => 'required|max:255',
'email' => [
'required',
'email',
'max:255',
Rule::unique('users')->ignore($user->id)
],
'user_name' => [
'required',
'max:255',
'min:4',
'string',
'alpha_dash',
Rule::unique('users')->ignore($user->id)
],
'phone' => [
'required',
'unique:users',
'min:10',
'numeric',
Rule::unique('users')->ignore($user->id)
],
], $messages);
$input = $request->except('bio');
$user->fill($input);
$user->bio = clean($request->input('bio'));
$user->birthday = date("d-m-Y", strtotime($user->birthday));
$user->user_name = Str::slug($request->input('user_name'), "_");
$user->save();
return redirect()->back()->with('success', __('Update successfully'));
}
In the View blade:
<div class="form-group">
<label>{{ __("Phone Number") }}</label>
<input type="text" value="{{ old('phone',$dataUser->phone) }}" name="phone" placeholder="{{ __('Phone Number') }}" class="form-control">
<i class="fa fa-phone input-icon"></i>
</div>
<div class="form-group">
<label>{{ __("Birthday") }}</label>
<input type="text" value="{{ old('birthday',$dataUser->birthday ? display_date($dataUser->birthday) : '') }}" name="birthday" placeholder="{{ __('Birthday') }}" class="form-control date-picker">
<i class="fa fa-birthday-cake input-icon"></i>
</div>
<div class="form-group">
<label>{{ __("About Yourself") }}</label>
<textarea name="bio" rows="5" class="form-control">{{ old('bio', $dataUser->bio) }}</textarea>
</div>
If the Phone is already saved and no change is done with it, the error (The phone has already been taken) is thrown.
need help to resolve the problem,
Thanks