Чтобы проверить и обработать входные данные из форм с помощью validation функции в Laravel, выполните следующие действия.
Определить Validation правила
Начните с определения validation правил для полей формы. Laravel предоставляет различные validation правила, которые можно использовать для обеспечения целостности и достоверности данных.
public function store(Request $request)
{
$validatedData = $request->validate([
'name' => 'required|max:255',
'email' => 'required|email|unique:users|max:255',
'password' => 'required|min:8',
]);
// Process the validated data
$user = User::create([
'name' => $validatedData['name'],
'email' => $validatedData['email'],
'password' => Hash::make($validatedData['password']),
]);
// Redirect to a success page or perform other actions
return redirect()->route('users.index')->with('success', 'User created successfully.');
}
В приведенном выше примере мы определяем validation правила для полей имени, электронной почты и пароля. Правило required
гарантирует, что поля не пусты, email
правило проверяет формат электронной почты, unique:users
правило проверяет, является ли электронная почта уникальной в users
таблице, а правила max
и min
определяют максимальную и минимальную длину поля пароля.
Обработка Validation результатов
Laravel Функция 's validation автоматически выполняет validation на основе определенных правил. В случае validation сбоя Laravel пользователь будет перенаправлен обратно в форму с соответствующими сообщениями об ошибках. Вы можете получить эти сообщения об ошибках в своем представлении, чтобы отобразить их пользователю.
<!-- Display validation errors -->
@if($errors->any())
<div class="alert alert-danger">
<ul>
@foreach($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
<!-- Create user form -->
<form method="POST" action="{{ route('users.store') }}">
@csrf
<input type="text" name="name" placeholder="Name" value="{{ old('name') }}">
<input type="email" name="email" placeholder="Email" value="{{ old('email') }}">
<input type="password" name="password" placeholder="Password">
<button type="submit">Create User</button>
</form>
В приведенном выше коде мы проверяем наличие validation ошибок и отображаем их в окне предупреждения. Функция old()
используется для повторного заполнения полей формы ранее введенными значениями, если произошла ошибка validation.
Следуя этому примеру, вы можете проверять и обрабатывать входные данные из форм, используя validation функцию в Laravel. Это гарантирует, что данные соответствуют заданным вами правилам, и помогает поддерживать целостность данных в вашем приложении.