Assalamu alaikum wr. wb.
Kali saya akan membuat form validasi dengan Codeigniter. Tutorial ini merupakan tutorial lanjutan dari tutorial sebelumnya yaitu Tutorial Membuat Aplikasi CRUD dengan Codeigniter + Bootstrap. Jadi saya tidak perlu membuat dari awal. Silahkan dibaca tutorial sebelumnya. Langsung saja ke TKP.
- Edit Controller Buku.php di folder latihan/application/controllers.
<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Buku extends CI_Controller{ private $alert = ''; public function __construct(){ parent::__construct(); $this->load->helper('url'); $this->load->model('bukuModel'); } public function index(){ $data['semua'] = $this->bukuModel->all(); $this->template('list',$data); } private function template($content,$data=null){ $data['content'] = $this->load->view($content,$data,true); $this->load->view('template',$data); } private function alert($open_tag=null,$close_tag=null,$data=null){ if($data!=null) $data = $open_tag.$data.$close_tag; return $data; } public function form(){ //load library form_validation $this->load->library('form_validation'); //set rules input POST //$this->form_validation->set_rules('INPUT NAME','HUMAN NAME','ATTRIBUT','ERROR MESSAGE'); $this->form_validation->set_rules('judul','Judul Buku','required|max_length[50]', array('required'=>'%s tidak boleh kosong','max_length'=>'%s tidak boleh melebihi 50 digit')); $this->form_validation->set_rules('pengarang','Nama Pengarang','required|max_length[50]', array('required'=>'%s tidak boleh kosong','max_length'=>'%s tidak boleh melebihi 50 digit')); $this->form_validation->set_rules('stok','Stok Buku','required|max_length[10]|integer', array('required'=>'%s tidak boleh kosong','max_length'=>'%s tidak boleh melebihi 10 digit','integer'=> '%s harus bilangan bulat')); //menjalankan form_validation if($this->form_validation->run()){ //jika berhasil ( OUTPUT == TRUE), maka akan melakukan proses $array = array( 'judul'=>$this->input->post('judul'), 'pengarang'=>$this->input->post('pengarang'), 'stok'=>$this->input->post('stok'), ); if($this->input->post('id')==''){ if($this->bukuModel->insert($array)){ $this->alert = $this->alert("<p class='alert alert-success'>","</p>","Sukses Menyimpan"); }else{ $this->alert = $this->alert("<p class='alert alert-danger'>","</p>","Gagal Menyimpan"); } }else{ if($this->bukuModel->update($array,array('id'=>$this->input->post('id')))){ $this->alert = $this->alert("<p class='alert alert-success'>","</p>","Sukses Menyimpan"); }else{ $this->alert = $this->alert("<p class='alert alert-danger'>","</p>","Gagal Menyimpan"); } } } $data['satu'] = $this->bukuModel->getWhere(array('id'=>$this->uri->segment(3)))->row_array(); $data['alert'] = $this->alert; $this->template('form',$data); } public function hapus(){ if($this->uri->segment(3)) $this->bukuModel->delete(array('id'=>$this->uri->segment(3))); redirect('buku'); } } ?> - Edit view form.php di folder latihan/application/views.
<div class="row"> <div class="col-md-12"> <h1 align="center">Form Buku</h1> </div> </div> <div class="row"> <div class="col-md-12"> <div class="panel panel-default"> <div class="panel-heading"> <label>Form Buku</label> </div> <div class="panel-body"> <?php echo validation_errors("<div class='alert alert-danger'>","</div>");//menampilkan error dari form_validation echo $alert;?> <form method="post" class="form-horizontal"> <div class="form-group"> <label class="control-label col-md-2">Judul</label> <div class="col-md-10"> <input type="text" name="judul" class="form-control" value="<?php echo $satu['judul'];?>"> </div> </div> <div class="form-group"> <label class="control-label col-md-2">Pengarang</label> <div class="col-md-10"> <input type="text" name="pengarang" class="form-control" value="<?php echo $satu['pengarang'];?>"> </div> </div> <div class="form-group"> <label class="control-label col-md-2">Stok</label> <div class="col-md-10"> <input type="text" name="stok" value="<?php echo $satu['stok'];?>" class="form-control"> </div> </div> <div class="form-group"> <div class="col-md-2"> <input type="hidden" name="id" value="<?php echo $satu['id'];?>"> </div> <div class="col-md-10"> <input type="submit" name="simpan" class="btn btn-primary" value="Simpan"> <a href="<?php echo site_url();?>" class="btn btn-danger">Kembali</a> </div> </div> </form> </div> </div> </div> </div> - Selesai. Silahkan dijalankan di localhost anda. Catatan : Form Validasi ini untuk memfilter input form sesuai aturan yang kita set di set_rules. Untuk aturan-aturan lainnya bisa dibaca di dokumentasi Codeigniter nya http://www.codeigniter.com/user_guide/libraries/form_validation.html.







0 komentar:
Posting Komentar