Belajar Membuat Operasi CRUD Pada Codeigniter 3 | Create ( Menambah Data )


Ngulik Kode - Setelah kemarin saya menuliskan teknik dasar belajar Framework Codeigniter dengan mudah sekarang kita masuk ke pembahasan yang lebih, yaitu belajar membuat Operasi CRUD pada Codeigniter. CRUD adalah singkatan dari Create, Read, Update, dan Delete yang biasa digunakan pada website dinamis.

Sebelum masuk kepembahasan CRUD alangkah baiknya kita terlebih dahulu memahami konsep dari MVC ( Model, View, Controller ). pada tutorial kemarin hanya saya berikan sampai pada Controller dan View saja. Sekarang kita akan bahas sedikit pada artikel kali ini.

Memahami Penggunaan Konsep MVC (Non-database)

Biasanya konsep MVC selalu dikaitkan dengan sebuah database, namun pada pembahasa kali ini, kita tidak akan menggunakan database. Penggunaan database akan dibahas dibawah setelah pembahasan ini selesai. Pada dasarnya pembahasan ini sama dengan pembahasan sebelumnya pada Controller dan View untuk menampilkan tulisan, tapi disini kita menggunakan konsep MVC Non-database. Langsung saja masuk kepada pembahasan.

Terlebih dahulu anda memerlukan sebuah file model dengan nama m_mvc.php kemudian simpan file tersebut pada folder latihanci/application latihanci\application\models. Kemudian buat kode programmnya seperti berikut :

Skrip m_mvc.php

<?php
class M_mvc extends CI_Model
{

function mvc()
{
$kalimat = "Ngilik Kode - Konsep MVC Non Database";
return $kalimat;
}
}

?>

Selanjutnya, buatlah file controller dengan nama c_mvc.php dan simpan file tersebut pada folder latihanci\application\controllers. Berikut adalah skrip programnya :

Skrip c_mvc.php

<?php
class C_mvc extends CI_Controller{

function index(){
$this->load->model('m_mvc');
$data['kalimat'] = $this->m_mvc->mvc();
$this->load->view('view_mvc', $data);
}
}

?>

Karena pada skrip diatas memanggil file View bernama view_mvc.php, maka kita perlu membuatnya juga file dengan nama view_mvc.php dan kita simpan pada folder latihanci\application\view. Berikut adalah skrip programmnya :

Skrip view_mvc.php

<html>
<head>
<title>Contoh Penggunaan View Codeigniter</title>
</head>

<body>
<?php 
echo $kalimat;
?>
</body>
</html>

Untuk bagian $kalimat  merupakan hasil yang didapat dari file model setelah melewati file controller. Untuk melihat hasilnya jalankan pada web browser anda dengan mengetikkan seperti URL berikut ini http://localhost/latihanci/index.php/c_mvc, maka hasilnya akan seperti gambar dibawah ini :


Sangat mudah kan ? Sekarang kita masuk kepada pembahasan selanjutnya yaitu Operasi CRUD, Konsep MVC dengan menggunakan Database.

Penggunaan Konsep MVC Dengan Menggunakan Database

Dalam membangun sebuah aplikasi, tentu saja tidak lepas dari yang namanya operasi CRUD ( Create, Read, Update, Delete). Operasi CRUD merupakan kewajiban dasar yang harus kita kuasai sebagai programmer untuk membangun sebuah aplikasi. Dengan operasi CRUD tersebut user dapat memasukan data baru, melihat struktur data, merubah data, dan sampai menghapus data. Untuk membuat sebuah aplikasi tersebut, tentu saja harus diperlukannya sebuah database, yang berfungsi untuk menampung suatu perubahan data.

Database yang akan kita gunakan pada kali ini adalah database MySQLi. Perlu anda ketahui, Codeigniter tidak hanyak mendukung MySQLi saja, namung juga mendukung database lainnya seperti MySQL, PostgreSQL, ODBC, Ms. SQL, SQLite, dan juga ORACLE.

Untuk mempermudah anda dalam pembelajaran operasi CRUD menggunakan Codeigniter ini, minimal anda sudah harus mengetahui struktur konsep dari MVC yang sudah dijelaskan sebelumnya.

Membuat Database

Langkah pertama yang harus anda lakukan adalah membuat sebuah database, dengan nama latihanci, selanjutnya membuat sebuah tabel dengan nama buku, lalu anda isikan field pada tabel buku seperti contoh gambar berikut :


Konfigurasi Database

Jika kalin sudah pernah membuat sebuah aplikasi dengan menggunakan PHP jadul, pasti akan selalu ada sebuah file untuk melakukan konfigurasi koneksi database. Begitu juga dengan framework, ada file khusus yang sudah disediakan untuk melakukan konfigurasi ke dalam database.

Untuk melakukan konfigurasi koneksi database pada framework Codeigniter, anda cukup membuka file database.php yang ada pada direktori latihanci\application\config.

Berikut ini adalah bagian yang perlu anda rubah :

'hostname' => 'localhost',
'username' => 'root',
'password' => '',
'database' => 'latihanci',
'dbdriver' => 'mysqli',

Jika kalian sudah menggunakan Codeigniter dengan versi 3 maka pada bagian dbdriver adalah menggunakan MySQLi bukan lagi MySQL jadi anda hanya tinggal merubahnya pada bagian username dan database.

Perlu di perhatikan kembali, agar tidak terjadi error saat aplikasi di jalankan. Anda harus melakukan konfigurasi lagi pada file autoload.php karena ada library dan helper yang harus sudah di-load. File autoload.php terletak pada folder latihanci\application\config. Hal ini dilakukan agar library dan helper di-load pada file controller ( tentunya jika semua controller memerlukan library dan helper yang telah kita set). Ada 2 baris skrip yang harus anda ubah, ubah bagian skrip menjadi seperti berikut :

$autoload['libraries'] = array('database');
$autoload['helper'] = array('url','form','html');


Operasi Create (Menambah Data)

Setelah kita membuat database beserta melakukan konfigurasi, sekarang kita masuk pada penulisan skrip program. Hal pertama, kita akan melakukan operasi tambah data. Pertama kita akan membuat file model dengan nama mbuku.php, kemudian simpan file tersebut pada folder latihanci\application\models. berikut adalah contoh penulisan skripnya :

Skrip mbuku.php

<?php
class Mbuku extends CI_Model
{
function tambah()
{
$nama_buku = $this->input->post('nama_buku');
$pengarang = $this->input->post('pengarang');
$keterangan = $this->input->post('keterangan');
$data = array('nama_buku' => $nama_buku,
'pengarang' => $pengarang,
'keterangan' => $keterangan);
$this->db->insert('buku', $data);
}
}
?>

Langkah selanjutnya adalah kita akan membuat sebuah file controller dengan nama c_buku.php dan simpan file tersebut pada folder latihanci\application\controller. File controller c_buku.php ini digunakan sebagai pengendali dari seluruh kegiatan operasi. Berikut adalah skrip programmnya :

Skrip c_buku.php

<?php
class C_buku extends CI_Controller
{
function add_buku()
{
if($this->input->post('submit')){
$this->load->model('mbuku');
$this->mbuku->tambah();
redirect('c_buku/index');
}
$this->load->view('buku_tambah');
}
}
?>

Langkah terakhir dari proses tambah data, kita akan membuat file buku_tambah.php sesuai dengan file yang dipanggil oleh controller. Untuk itu, anda buat file baru dengan nama buku_tambah.php dan simpan file tersebut pada folder latihanci\application\view. Untuk penulisan skrip programnya seperti contoh berikut :

Skrip buku_tambah.php

<html>
<head>
<title>Form Tambah Data</title>
</head>
<body>
<h3>Form Tambah Data</h3>
<?php echo form_open('c_buku/add_buku'); ?>
<table>
<tr>
<td>Nama Buku</td>
<td>:</td>
<td>
<?php
$nama_buku = array('name' => 'nama_buku',
'maxlength' => '30',
'value' => '',
'size' => '30');
echo form_input($nama_buku);
?>
</td>
</tr>
<tr>
<td>Pengarang</td>
<td>:</td>
<td>
<?php
$pengarang = array('name' => 'pengarang',
'maxlength' => '30',
'value' => '',
'size' => '20');
echo form_input($pengarang);
?>
</td>
</tr>
<tr>
<td>Keterangan</td>
<td>:</td>
<td>
<?php
$keterangan = array('name' => 'keterangan',
'maxlength' => '30',
'cols' => '30',
'rows' => '3';
echo form_input($keterangan);
?>
</td>
</tr>
<tr>
<td></td>
<td></td>
<td>
<?php echo form_submit('submit','Simpan','id="submit"'); ?>
</td>
</tr>
</table>
<?php echo form_close(); ?>
</body>
</html>

Pada file tambah_buku.php digunakan untuk membuat desain form tambah data, di mana proses tambah data akan dilakukan atau diarahkan pada fungsi add_buku di controller c_buku.

Untuk melihat hasil desain form-nya pada web browser, kita ketikkan alamat URL http://localhost/latihanci/index.php/c_buku/add_buku, maka hasilnya akan tampak seperti gambar dibawah ini :


Isikan masing-masing data pada textbox seperti gambar diatas. Namun ketika kita langsung klik button "Simpan", pasti akan muncul pesan error "404 Page Not Found". Loh kenapa seperti itu ? Karena ketika proses input data dilakukan pada fungsi add_buku, disana terdapat proses pemanggilan halaman web (redirect) URL pada posisi index. Proses pengalihan halaman tersebut dilakukan setelah sistem berhasil menyimpan masing-masing data ke database.

Untuk melihat lebih jelasnya, lihat gambar dibawah ini ketika proses input dilakukan :


Berikut adalah data yang berhasil di simpan kedalam database


Page error yang muncul, ketika data berhasil di simpan. Lalu bagaimana cara agar aplikasi tidak menampilkan pesan seperti ini ? Jawabanya adalah kita harus membuat fungsi bernama index pada file controller buku.php, yang mana fungsi index tersebut akan kita gunakan untuk menampilkan data yang ada pada database. Lalu bagaimana cara menampilkan data dari database ? Pembahasan nanti akan kita lanjutkan pada Bagian 2 lanjutan dari artikel ini.

Artikel Selanjutnya Disini :


Sekian yang dapat saya berikan, semoga dapat bermanfaat...

0 comments

Posting Komentar