Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
как в админке изменить пароль пользователя в модальном окне? на текущий момент в моем приложении на странице редактирования можно изменить персональные данные пользователя кроме пароля. теперь я хочу реализовать изменение пароля пользователя, чтобы при клике на ссылку "изменить пароль" открывалось модальное окно и в форме ввода ввести новый пароль. нужно ли создавать отдельный метод в контроллере или можно это реализовать в одном методе update()?
Метод update
public function update(Request $request, $id)
{
$request->validate([
'login' => 'required',
'first_name' => 'required',
'last_name' => 'required',
]);
$user = User::find($id);
$data = $request->all();
$user->update($data);
return redirect()->route('user.index')->with('success', 'Изменения сохранены');
}
Вид edit
<div class="content">
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header">
<h3 class="card-title">Редактирование пользователя</h3>
</div>
<form role="form" method="post" action="{{ route('user.update', ['user' => $user->id]) }}" >
@csrf
@method('PUT')
<div class="card-body">
<div class="form-group">
<label for="login">Логин</label>
<input type="text" name="login" class="form-control @error('login') is-invalid @enderror" value="{{ $user->login }}">
<a href="#" data-toggle="modal" data-target="#modal-default">Изменить пароль</a>
</div>
<div class="form-group">
<label for="email">E-mail</label>
<input type="text" name="email" class="form-control @error('email') is-invalid @enderror" value="{{ $user->email }}">
</div>
<div class="form-group">
<label for="first_name">Фамилия</label>
<input type="text" name="first_name" class="form-control @error('first_name') is-invalid @enderror" value="{{ $user->first_name }}">
</div>
<div class="form-group">
<label for="last_name">Имя</label>
<input type="text" name="last_name" class="form-control @error('last_name') is-invalid @enderror" value="{{ $user->last_name }}">
</div>
<div class="form-group">
<label for="middle_name">Отчество</label>
<input type="text" name="middle_name" class="form-control @error('middle_name') is-invalid @enderror" value="{{ $user->middle_name }}">
</div>
<div class="form-group">
<label for="role_id">Роль</label>
<select name="role_id" class="form-control">
<option value="">пользователь</option>
@foreach($roleList as $role)
<option value="{{ $role->id }}" @if($role->id == $user->role_id) selected @endif>{{ $role->name }}</option>
@endforeach
</select>
</div>
</div>
<div class="card-footer">
<button type="submit" class="btn btn-primary">Сохранить</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<div class="modal fade" id="modal-default">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Изменение пароля</h4>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<div class="input-group mb-3">
<input type="password" name="password" class="form-control" placeholder="Введите новый пароль">
</div>
<div class="input-group mb-3">
<input type="password" name="password_confirmation" class="form-control" placeholder="Подтвердите новый пароль">
</div>
</div>
<div class="modal-footer justify-content-between">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
Не в сети
как в админке изменить пароль пользователя
А как насчет защиты пользовательских данных?
Не в сети
А как насчет защиты пользовательских данных?
в данном случае приложение будет являться что-то вроде хелпдеск-системой и администратор сам будет добавлять пользователей, но в то же время у пользователей будет возможность самостоятельно зарегаться, если администратор в настройках приложения включит эту возможность.
Не в сети
Страницы 1