CodeIgniter 3 adalah kerangka kerja (framework) PHP yang sangat populer dan efektif dalam membangun aplikasi web.
Salah satu fitur penting dari sebuah aplikasi web adalah form. Form digunakan untuk mengumpulkan informasi dari pengguna. Namun, masalah yang sering terjadi pada form adalah data yang diinputkan tidak valid.
Oleh karena itu, diperlukan form validasi untuk memastikan data yang diinputkan benar dan sesuai dengan yang diharapkan.
Dalam CodeIgniter 3, form validasi dapat dilakukan dengan mudah menggunakan fitur validasi bawaan (built-in validation).
Fitur ini memungkinkan Anda untuk menentukan aturan validasi untuk setiap field dalam form. Ketika data diinputkan, CodeIgniter akan secara otomatis memvalidasi data dan memberikan pesan kesalahan jika terdapat kesalahan.
Berikut adalah langkah-langkah untuk menggunakan fitur validasi bawaan dalam CodeIgniter 3:
1. Persiapkan Controller
Controller adalah komponen utama dalam arsitektur MVC (Model-View-Controller) CodeIgniter. Sebelum menggunakan fitur validasi, pastikan Anda telah mempersiapkan controller dengan benar.
Silahkan buat sebuah controller baru dengan nama FormController.php
dan tambahkan kode berikut:
<?php defined('BASEPATH') OR exit('No direct script access allowed'); class FormController extends CI_Controller { public function index() { $this->load->view('form'); } public function submit_form() { // Validasi form } }
Pada kode di atas, method index()
digunakan untuk menampilkan form, sedangkan method submit_form()
akan dipanggil saat form di-submit. Selanjutnya, kita akan menambahkan kode validasi pada method submit_form()
.
2. Menentukan Aturan Validasi
Selanjutnya, Anda perlu menentukan aturan validasi untuk setiap field dalam form. Aturan validasi dapat ditentukan dalam array yang didefinisikan di dalam method submit_form()
. Misalnya, jika Anda memiliki form dengan field “nama” dan “email”, Anda dapat menentukan aturan validasi sebagai berikut:
$rules = array( array( 'field' => 'nama', 'label' => 'Nama', 'rules' => 'required' ), array( 'field' => 'email', 'label' => 'Email', 'rules' => 'required|valid_email' ) );
Aturan validasi di atas menentukan bahwa field “nama” dan “email” harus diisi (required) dan field “email” harus berisi email yang valid (valid_email).
3. Melakukan Validasi
Setelah menentukan aturan validasi, kita dapat melakukan validasi pada data yang diinputkan. Untuk melakukan validasi, gunakan method set_rules()
dan run()
yang disediakan oleh CodeIgniter. Berikut adalah contoh kode validasi pada method submit_form()
:
public function submit_form() { // Menentukan aturan validasi $rules = array( array( 'field' => 'nama', 'label' => 'Nama', 'rules' => 'required' ), array( 'field' => 'email', 'label' => 'Email', 'rules' => 'required|valid_email' ) ); // Menentukan pesan kesalahan $messages = array( 'required' => 'Field %s harus diisi.', 'valid_email' => 'Field %s harus berisi email yang valid.' ); // Set aturan validasi dan pesan kesalahan $this->form_validation->set_rules($rules); $this->form_validation->set_message($messages); // Jalankan validasi if ($this->form_validation->run() == FALSE) { // Jika terdapat kesalahan, tampilkan kembali form dengan pesan kesalahan $this->load->view('form'); } else { // Jika tidak terdapat kesalahan, proses data $nama = $this->input->post('nama'); $email = $this->input->post('email'); // Lakukan proses data }
Pada kode di atas, method set_rules()
digunakan untuk menentukan aturan validasi, sedangkan method set_message()
digunakan untuk menentukan pesan kesalahan. Setelah aturan validasi dan pesan kesalahan ditentukan, kita dapat menjalankan validasi dengan menggunakan method run()
. Jika terdapat kesalahan, kita akan menampilkan kembali form dengan pesan kesalahan. Jika tidak terdapat kesalahan, kita dapat melakukan proses data.
4. Menampilkan Pesan Kesalahan
Jika terdapat kesalahan pada form, CodeIgniter akan menampilkan pesan kesalahan yang sesuai dengan aturan validasi yang dilanggar. Anda dapat menampilkan pesan kesalahan pada form dengan menggunakan method validation_errors()
. Berikut adalah contoh kode untuk menampilkan pesan kesalahan pada form:
<?php echo validation_errors(); ?>
Tempatkan kode di atas pada form HTML, misalnya:
<form action="<?php echo site_url('form/submit_form'); ?>" method="post"> <label for="nama">Nama:</label> <input type="text" name="nama" value="<?php echo set_value('nama'); ?>"> <?php echo form_error('nama'); ?> <label for="email">Email:</label> <input type="text" name="email" value="<?php echo set_value('email'); ?>"> <?php echo form_error('email'); ?> <input type="submit" value="Submit"> </form>
Pada kode di atas, method set_value()
digunakan untuk menampilkan kembali data yang diinputkan jika terdapat kesalahan. Sedangkan method form_error()
digunakan untuk menampilkan pesan kesalahan untuk field tertentu.
Kesimpulan
Form validasi adalah fitur penting dalam sebuah aplikasi web. Dalam CodeIgniter 3, form validasi dapat dilakukan dengan mudah menggunakan fitur validasi bawaan. Dengan melakukan validasi pada data yang diinputkan, Anda dapat memastikan bahwa data yang disimpan dalam database benar dan sesuai dengan yang diharapkan.
Beberapa artikel lain dari blog ini terkait Framework CodeIgniter: