Tutorial contoh validasi form Laravel. Di sini, kami akan menunjukkan cara memvalidasi data formulir di aplikasi laravel.
Dalam tutorial ini, kita akan membuat form detail karyawan dan submit data form di controller. Dan memvalidasi data formulir sebelum insert/save ke database.
Langkah 1 – Unduh Aplikasi Laravel
Pertama-tama unduh atau instal pengaturan baru laravel. Jadi, buka terminal dan ketik perintah berikut untuk menginstal aplikasi laravel baru ke mesin Anda :
composer create-project --prefer-dist laravel/laravel FormValidation
Langkah 2 – Siapkan Database dengan Aplikasi
Pada langkah ini, atur database dengan aplikasi laravel yang telah diunduh/diinstal. Jadi, Anda perlu mencari file .env dan mengatur detail database sebagai berikut:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database-name
DB_USERNAME=database-user-name
DB_PASSWORD=database-password
Langkah 3 – Buat Model & Migrasi
Pada langkah ini, buka lagi command prompt Anda. Dan jalankan perintah berikut di atasnya. Untuk membuat file model dan migrasi untuk formulir:
php artisan make:model Employee -m
Setelah itu, buka file create_employees_table.php di dalam direktori FormValidation/database/migrations/. Dan perbarui fungsi up() dengan kode berikut:
public function up()
{
Schema::create('employees', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email');
$table->string('contact_no');
$table->string('age');
$table->timestamps();
});
}
Kemudian, buka lagi command prompt dan jalankan perintah berikut untuk membuat tabel ke dalam database:
php artisan migrate
Langkah 4 – Buat Rute Formulir
Pada langkah ini, buka file web.php dari direktori route. Dan perbarui rute berikut ke dalam file web.php :
use App\Http\Controllers\FormController;
Route::get('form', [FormController::class, 'index']);
Route::post('store-form', [FormController::class, 'store']);
Langkah 5 – Buat Pengontrol Formulir Dengan Artisan Command
Pada langkah ini, jalankan perintah berikut pada prompt perintah untuk membuat file Controller :
php artisan make:controller FormController
Setelah itu, buka app/http/controllers dan buka file FormController.php. Dan perbarui kode berikut ke dalamnya:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Employee;
class FormController extends Controller
{
public function index()
{
return view('form');
}
public function store(Request $request)
{
$validatedData = $request->validate([
'name' => 'required',
'email' => 'required|unique:employees|max:255',
'age' => 'required',
'contact_no' => 'required|unique:employees|max:255',
]);
$emp = new Employee;
$emp->name = $request->name;
$emp->email = $request->email;
$emp->age = $request->age;
$emp->contact_no = $request->contact_no;
$emp->save();
return redirect('form')->with('status', 'Form Data Has Been validated and insert');
}
}
Langkah 6 – Buat File Blade Formulir
Sekarang, buat file tampilan bilah formulir untuk menampilkan formulir dan kirim ke database. Jadi, Buka sumber resources/views dan buat form.blade.php dan perbarui kode berikut ke dalamnya:
<!DOCTYPE html>
<html>
<head>
<title>Laravel Example Form Validation OOKINFO</title>
<meta name="csrf-token" content="{{ csrf_token() }}">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
</head>
<body>
<div class="container mt-4">
@if(session('status'))
<div class="alert alert-success">
{{ session('status') }}
</div>
@endif
<div class="card">
<div class="card-header text-center font-weight-bold">
<h2>Laravel Form Validation Tutorial OOKINFO.COM</h2>
</div>
<div class="card-body">
<form name="employee" id="employee" method="post" action="{{url('store-form')}}">
@csrf
<div class="form-group">
<label for="exampleInputEmail1">Name</label>
<input type="text" id="name" name="name" class="@error('name') is-invalid @enderror form-control">
@error('name')
<div class="alert alert-danger mt-1 mb-1">{{ $message }}</div>
@enderror
</div>
<div class="form-group">
<label for="exampleInputEmail1">Email</label>
<input type="email" id="email" name="email" class="@error('email') is-invalid @enderror form-control">
@error('email')
<div class="alert alert-danger mt-1 mb-1">{{ $message }}</div>
@enderror
</div>
<div class="form-group">
<label for="exampleInputEmail1">Age</label>
<input type="number" id="age" name="age" class="@error('age') is-invalid @enderror form-control">
@error('age')
<div class="alert alert-danger mt-1 mb-1">{{ $message }}</div>
@enderror
</div>
<div class="form-group">
<label for="exampleInputEmail1">Contact No</label>
<input type="number" id="contact_no" name="contact_no" class="@error('contact_no') is-invalid @enderror form-control">
@error('contact_no')
<div class="alert alert-danger mt-1 mb-1">{{ $message }}</div>
@enderror
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
</div>
</body>
</html>
Kode di bawah ini akan menampilkan pesan kesalahan validasi pada file tampilan blade:
@error('name')
<div class="alert alert-danger mt-1 mb-1">{{ $message }}</div>
@enderror
Langkah 7 – Jalankan Server Pengembangan
Langkah terakhir, buka command prompt dan jalankan perintah berikut untuk memulai server pengembangan:
php artisan serve
Kemudian buka browser Anda dan tekan url berikut di atasnya:
http://127.0.0.1:8000/form