Level 2
How is your routes definition looks like? Is laravel fetching the correct User from url ?? you can check it using
dd($user)
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
hello friends, i have update user interface , when i submit the button for the user id:9 for example it update the first user. I don't hnow why. this is the code of UserController(edit and update).
public function edit($id)
{
$user = User::with('role')->where('id', $id)->first();
$roles = Roles::all();
return view('users.edit', compact('user', 'roles'));
}
public function update(User $user, Request $request)
{
$request->validate([
'name' => 'required|string|max:255',
'email' => 'required|email|unique:users|max:255',
'password' ,
'password_confirmation' ,
'role_id' => 'required',
]);
$request->user()->update([
'name' => $request->name,
'email' => $request->email,
'password' => Hash::make($request->password),
'role_id' => $request->role_id
]);
return redirect('/users')->with('success', 'Your User has been updated successfully!');
}
I correct the function update like that: it work now
public function update(User $user, Request $request)
{
$request->validate([
'name' => 'required|string|max:255',
'email' => 'required|email|unique:users,email,'.$request->user_id.',id',
'password' ,
'password_confirmation' ,
'role_id' => 'required',
]);
User::where('id', $request->user_id)->update([
'name' => $request->name,
'email' => $request->email,
'password' => Hash::make($request->password),
'role_id' => $request->role_id
]);
return redirect('/users')->with('success', 'Your User has been updated successfully!');
}
Please or to participate in this conversation.