Validasi Form di CodeIgniter
Penjelasan
CodeIgniter menyediakan validasi bawaan lewat method $this->validate($rules) di dalam controller — mengembalikan true/false, dan pesan errornya bisa diambil lewat $this->validator->getErrors() untuk ditampilkan balik ke view.
Contoh Konsep
<?php
public function store()
{
if (! $this->validate([
'nama' => 'required|min_length[3]',
'email' => 'required|valid_email',
'harga' => 'required|numeric',
])) {
return view('produk/create', [
'errors' => $this->validator->getErrors(),
]);
}
$nama = $this->request->getPost('nama');
return "Data valid: {$nama}";
}
Praktikum
Buat method store() yang memvalidasi input judul (wajib, minimal 5 karakter) dan penulis (wajib) memakai $this->validate(). Kembalikan teks "Tersimpan: {$judul}" kalau lolos validasi, atau view dengan errors kalau gagal.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Beda dengan Laravel yang otomatis redirect saat validasi gagal, $this->validate() di CodeIgniter HANYA mengembalikan boolean — kamu WAJIB menulis sendiri logika "kalau gagal, return view lagi" seperti dicontohkan di atas, tidak terjadi otomatis.