In this article, we will see the laravel 8 form validation example. form validation in laravel is a very common functionality and it is used in each and every website to validate the form field. Here, we will use has function in the session to check the error messages in laravel 8. using this example you can check simple form validation as well as you can create your own custom validation in laravel 8.
So, let's see the laravel custom validation rule example and laravel 8 form validation example.
We are adding a route in the web.php file for the form validation tutorial in laravel 8.
<?php
use Illuminate\Support\Facades\Route;
Route::get('user/create','App\Http\Controllers\UserController@create');
Route::post('user/store','App\Http\Controllers\UserController@store');
Now, we will create UserController to save data in the database. So, add the below code to your controller.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\User;
class UserController extends Controller
{
public function create()
{
return view('index');
}
public function store(Request $request)
{
$validatedData = $request->validate([
'name' => 'required',
'password' => 'required|min:8',
'email' => 'required|email|unique:users'
], [
'name.required' => 'Name is required',
'password.required' => 'Password is required',
'email.required' => 'Email is required'
]);
$validatedData['password'] = bcrypt($validatedData['password']);
$user = User::create($validatedData);
return back()->with('success', 'User Created Successfully !!');
}
}
In this step, we will create a blade file and save the name as index.blade.php
<html>
<head>
<title>Laravel 8 Form Validation Example - websolutionstuff.com</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha/css/bootstrap.css" rel="stylesheet">
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-12" style="margin-top: 30px;">
<h1>Laravel 8 Form Validation Example - websolutionstuff.com</h1>
@if(Session::has('success'))
<div class="alert alert-success">
{{ Session::get('success') }}
@php
Session::forget('success');
@endphp
</div>
@endif
<form method="POST" action="{{ url('user/store') }}">
@csrf
<div class="form-group">
<strong>Name:</strong>
<input type="text" name="name" class="form-control" placeholder="Name">
@if ($errors->has('name'))
<span class="text-danger">{{ $errors->first('name') }}</span>
@endif
</div>
<div class="form-group">
<strong>Password:</strong>
<input type="password" name="password" class="form-control" placeholder="Password">
@if ($errors->has('password'))
<span class="text-danger">{{ $errors->first('password') }}</span>
@endif
</div>
<div class="form-group">
<strong>Email:</strong>
<input type="text" name="email" class="form-control" placeholder="Email">
@if ($errors->has('email'))
<span class="text-danger">{{ $errors->first('email') }}</span>
@endif
</div>
<div class="form-group">
<button class="btn btn-info btn-submit">Submit</button>
</div>
</form>
</div>
</div>
</div>
</body>
</html>
Output:
You might also like:
In this tutorial, I will show you a session timeout example in laravel. After a set amount of idle time, the bootstrap w...
Jun-05-2020
Livewire is a powerful framework for building dynamic, reactive components in Laravel without writing any JavaScript. Wi...
Jan-28-2025
Small businesses have limited budgets and resources. Hence, they invest a calculated risk and resources in building an o...
Feb-20-2025
In this article, we will see laravel 10 send bulk mail using a queue. Here, we will learn about how to send bulk ma...
Mar-13-2023