Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

haschwalth's avatar

update user with Modal get 404 not found

Him, I'm a newbie in Programming and Laravel, I can't seem to get this to work and I'm stuck on this issue.

UserController:

public function update(UpdateUserRequest $request, User $user, $username)
    {
        $validate = $request->validated();
        if(!empty($validate['password'])) {
            $validate['password'] = Hash::make($validate['password']);
        } else {
            unset($validate['password']);
        }
        // User::update($validate);
        $user = User::find($username);
        $user->name = $request->name;
        $user->password = $request->$validate['password'];
        $user->roles = $request->roles;
        $user->title = $request->title;
        $user->save();
        return back('users')->with('success', "Update User '.$user->name.' was successful!");
    }

UpdateUserRequest:

public function authorize(): bool
    {
        return true;
    }
public function rules(): array
    {
        return [
            'name' => 'required|min:4',
            'password' => 'sometimes|max:50',
            'roles' => 'required',
            'title' => 'required|min:5'
        ];
    }

Route:

Route::resource('users', UserController::class)->middleware('auth');

View:

<!-- Modal -->
@foreach($users as $u)
<div class="modal fade" id="updateUserModal{{ $u->username }}" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1">
    <div class="modal-dialog modal-lg">
      <div class="modal-content">
        <div class="modal-header">
          <h5 class="modal-title text-dark">Update User</h5>
          <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
        </div>
        <hr>
        <div class="modal-body">
            <form action="{{ url('users/'.$u->username) }}" method="POST">
                @csrf
                @method('PUT')
                <div class="row">
                    <div class="col-lg-6">
                        <div class="row mb-3">
                            <label class="col-sm-4 text-dark col-form-label">Name</label>
                            <div class="col-sm-8">
                              <input type="text" class="form-control" name="name" value="{{ $u->name }}" autofocus required>
                            </div>
                        </div>
                    </div>
                    <div class="col-lg-6">
                        <div class="row mb-3">
                            <label class="col-sm-4 text-dark col-form-label">Password</label>
                            <div class="col-sm-8">
                                <input type="password" class="form-control" name="password">
                            </div>
                        </div>
                    </div>
                </div>
                <div class="row">
                    <div class="col-lg-6">
                        <div class="row mb-3">
                            <label class="col-sm-4 text-dark col-form-label">Roles</label>
                            <div class="col-sm-8">
                                <select class="form-control selectric" name="roles" required>
                                    <option value="" selected>Please Choose an Option</option>
                                    <option value="1" {{ ($u->roles == '1') ? 'selected' : '' }}>Admin</option>
                                    <option value="2" {{ ($u->roles == '2') ? 'selected' : '' }}>User</option>
                                </select>
                            </div>
                        </div>
                    </div>
                    <div class="col-lg-6">
                        <div class="row mb-3">
                            <label class="col-sm-4 text-dark col-form-label">Title</label>
                            <div class="col-sm-8">
                                <input type="text" class="form-control" name="title" value="{{ $u->title }}" required>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="modal-footer">
                    <button type="reset" class="btn btn-danger">Reset</button>
                    <button type="submit" class="btn btn-primary">Create</button>
                </div>
            </form>
        </div>
      </div>
    </div>
</div>
@endforeach
0 likes
1 reply

Please or to participate in this conversation.