Validasi Form Dropdown CodeIgniter Set Value Jika Error

Berikut ini code snippet tentang bagaimana menggunakan form_validation CodeIgniter untuk form dropdown.

Jika form di submit, kemudian terjadi error, maka di form dropdown akan terselect value yang sebelumnya diisi ketika form disubmit.

Validasi Form Dropdown CodeIgniter Set Value Jika Error

Langsung saja, berikut ini snippet code nya:

Untuk bagian view:

<?php
       $attributes = 'class ="form-control"';
       $pilih = set_value('id_jenis');
       echo form_dropdown("id_jenis", $jenis_perangkat, $pilih, $attributes);
?>

Untuk bagian controller:

<?php

public function tambahperangkat() {
     $data['judul'] = 'Tambah Perangkat';
     $this->load->model('jenisperangkat_model');
     //get jenis for dropdown in form
     $data['jenis_perangkat'] = $this->jenisperangkat_model->get_all_jenis();

     //load library form_validation
     $this->load->library('form_validation');
     $this->form_validation->set_rules('id_jenis', 'Jenis Server', 'callback_dropdown_jenis_check');
     
     //pengecekan validasi
     if($this->form_validation->run() == FALSE){
          $this->load->view('index', $data);
     } else{
          this->perangkatdc_model->save_perangkat($id, $id_jenis);
          redirect('perangkatdc/index');
     }

}

//callback dari form validation
public function dropdown_jenis_check($param){
     if($param == ''){
          $this->form_validation->set_message('dropdown_jenis_check', '%s belum dipilih');
            return FALSE;
     }else{
            return TRUE;
     }
}

?>

dan ini bagian modelnya:

<?php

function get_all_jenis() {
        $this->db->select('*');
        $this->db->from('jenis');
        //$this->db->order_by('jenis', 'ASC');
        $array_keys_values = $this->db->get();

        $hasil[''] = '- Pilih Jenis Perangkat -';

        foreach ($array_keys_values->result() as $row) {
            $hasil[$row->id_jenis] = $row->jenis;
            
        }

        return $hasil;
}

?>

Jangan asal dicopas trus dicoba ya, karena pasti ga akan jalan. Disesuaikan dulu sesuai code yang ingin agan buat. Pokoknya intinya seperti code di atas.

Kita menggunakan set_value() untuk mengeset kembali value dari dropdown yang sebelumnya disubmit tetapi error.

Sekian validasi form dropdown Codeigniter. Semoga bermanfaat!

Leave a Comment