Kategori Random

Membuat CRUD CodeIgniter dengan Tampilan Bootstrap

Posted : 17 Februari 2015 | 05:38:41 , Dibaca 61808 kali

Kembali bersama dengan saya, kali ini saya akan berbagi sedikit tentang crud di codeigniter. CRUD sendiri adalah Create Read Update Delete data yang berada pada database. Dalam sebuah projek yang pasti tidak bisa lepas dari CRUD sebab ini adalah elemen paling dasar dalam membangun sebuah projek website maupun aplikasi.

Mari kita mulai pertama kita siapkan segala perlengkapan nya yakni

1. Database
2. Core Codeigniter 
3. Bootstrap template 
4. Jquery

Pada artikel sebelum-sebelumnya saya sudah pernah membuat tampilan codeigniter dengan bootstrap : Membuat tampilan CodeIgniter dengan Bootstrap silakan dibaca dan dipraktekan sebab ini merupakan lanjutan dari tutorial tersebut. Saya asumsusikan templatenya udah jadi tinggal nanti kita ubah sedikit dan kita bangun crudnya.

Database 

Ciptakan sebuah database di mysql agar nantinya kita simpan datanya disana, agar seragam kita buat nama databasenya db_crud dengan nama tabel tb_barang

CREATE TABLE `tb_barang` (
  `kode_brg` int(5) NOT NULL AUTO_INCREMENT,
  `barcode` varchar(20) NOT NULL,
  `nama_brg` varchar(150) NOT NULL,
  `harga_brg` int(10) NOT NULL,
  `keterangan` tinytext NOT NULL,
  `jenis` varchar(30) DEFAULT NULL,
  `satuan` varchar(30) DEFAULT NULL,
  `stok_brg` int(5) DEFAULT NULL,
  PRIMARY KEY (`kode_brg`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1

Konfigurasi Codeigniter

Konfigurasi database.php di folder application/config seperti dibawah ini :

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'db_crud';

sesuaikan dengan webserver agan-agan 

kemudian di routes.php masih di folder yang sama

$route['default_controller'] = "barang";
$route['404_override'] = '';

jadi nantinya default controllernya akan mengakses controller barang

kemudian di autoload.php masih difolder yang sama, tambahkah librari database, session dan url , buat seperti ini

$autoload['libraries'] = array('database','session'); 

$autoload['helper'] = array('url');  

 

.htaccess

tambahkan file .htaccess pada root foldernya buat seperti dibawah ini

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*)$ index.php/$1 [NC,L]

.htaccess selain sebagai security, berfungsi juga untuk menghilang index.php pada url, pada saat kita memanggil url

CRUD

Controller barang.php simpan di folder application/controllers/ 

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Barang extends CI_Controller {

/*******
     | CRUD barang
     | controller barang view, create, update, delete
     | by g2tech
     ***********/
    public function __construct() {
        parent::__construct();
        $this->load->model('mbarang');
        $this->load->helper('form','url');
    }
//class fungsi awal ketika kita panggil controller barang
	public function index()
	{
	    $data['title'] = 'CRUD CodeIgniter Studi Kasus Barang'; //judul title
	    $data['qbarang'] = $this->mbarang->get_allbarang(); //model semua barang

		$this->load->view('vbarang',$data); //load views vbarang

	}

    public function form(){
    	//ambil variabel URL
		$mau_ke					= $this->uri->segment(3);
		$idu					= $this->uri->segment(4);
        

		//ambil variabel dari form
		$id     				= addslashes($this->input->post('id'));
		$kode					= addslashes($this->input->post('kode'));
		$nama					= addslashes($this->input->post('nama'));
		$jenis					= addslashes($this->input->post('jenis'));
		$keterangan				= addslashes($this->input->post('uraian'));
		$satuan				    = addslashes($this->input->post('satuan'));
		$harga				    = addslashes($this->input->post('harga'));
		$stok				    = addslashes($this->input->post('stok'));

//mengarahkan fungsi form sesuai dengan uri segmentnya
		if ($mau_ke == "add") {//jika uri segmentnya add
		    $data['title'] = 'Tambah barang';
		    $data['aksi'] = 'aksi_add';
            $this->load->view('vformbarang',$data);
		} else if ($mau_ke == "edit") {//jika uri segmentnya edit
			$data['qdata']	= $this->mbarang->get_barang_byid($idu);
			$data['title'] = 'Edit barang';
		    $data['aksi'] = 'aksi_edit';
            $this->load->view('vformbarang',$data);
		} else if ($mau_ke == "aksi_add") {//jika uri segmentnya aksi_add sebagai fungsi untuk insert
			$data = array(
                'barcode'   => $kode,
                'nama_brg'  => $nama,
                'harga_brg' => $harga,
                'keterangan'=> $keterangan,
                'satuan'    => $satuan,
                'jenis'     => $jenis,
                'stok_brg'  => $stok
            );
            $this->mbarang->get_insert($data); //model insert data barang
			$this->session->set_flashdata("pesan", "<div class=\"alert alert-success\" id=\"alert\"><i class=\"glyphicon glyphicon-ok\"></i> Data berhasil di insert</div>"); //pesan yang tampil setalah berhasil di insert
			redirect('barang');
        } else if ($mau_ke == "aksi_edit") { //jika uri segmentnya aksi_edit sebagai fungsi untuk update
          $data = array(
                'barcode'   => $kode,
                'nama_brg'  => $nama,
                'harga_brg' => $harga,
                'keterangan'=> $keterangan,
                'satuan'    => $satuan,
                'jenis'     => $jenis,
                'stok_brg'  => $stok
            );
            $this->mbarang->get_update($id,$data); //modal update data barang
			$this->session->set_flashdata("pesan", "<div class=\"alert alert-success\" id=\"alert\"><i class=\"glyphicon glyphicon-ok\"></i> Data berhasil diupdate</div>"); //pesan yang tampil setelah berhasil di update
			redirect('barang');
		}

    }
    public function detail($id){ //fungsi detail barang
        $data['title'] = 'Detail Barang'; //judul title
	    $data['qbarang'] = $this->mbarang->get_barang_byid($id); //query model barang sesuai id

		$this->load->view('vdetbarang',$data); //meload views detail barang
    }
    public function hapus($gid){ //fungsi hapus barang sesuai dengan id

        $this->mbarang->del_barang($gid);
        $this->session->set_flashdata("pesan", "<div class=\"alert alert-danger\" id=\"alert\"><i class=\"glyphicon glyphicon-ok\"></i> Barang berhasil dihapus</div>");
        redirect('barang');
	}
}

/* End of file barang.php */
/* Location: ./application/controllers/barang.php */

Pada controller diatas sudah tersedia semua aksi crud yang akan dieksekusi. Sekarang kita tinggal buatkan model dan view nya. Mari kita lanjutkan

Bersambung ... Membuat CRUD CodeIgniter dengan Tampilan Bootstrap II

Postingan Terkait
» Mengganti Dukungan Bahasa Pada Codeigniter 3.xx ( 13 Agu 2017 | 17:08:24 , 287 hits )
» Cetak Laporan Format Excel di Codeigniter ( 25 Jan 2017 | 06:39:12 , 1456 hits )
» Membuat Laporan PDF dengan DomPDF di CodeIgniter ( 04 Nov 2016 | 07:42:55 , 4202 hits )
» Edit dan Hapus Foto Upload Codeigniter ( 31 Okt 2016 | 08:25:06 , 6513 hits )
» Membuat Paging dan Search Bootstrap CodeIgniter ( 11 Okt 2016 | 16:26:41 , 10189 hits )