Anda di halaman 1dari 5

Fungsi Insert Data dalam CRUD (Create Read Update Delete)

Menggunakan Codeigniter

CRUD adalah singkatan dari Create Read Update Delete , yang sering digunakan pada aplikasi-
aplikasi pengolahan data yang kebanyakan mengguanakan fungsi CRUD didalamnya . Fungsi ini
digunakan untuk menambahkan data, menghapus data, serta mengupdate data.
Dalam artikel ini saya mencoba memberikan sebuah contoh penerapan crud sederhana di dalam
codeigniter, sebelumnya mari kita bahas dulu apa saja yang diperlu dikonfigurasi di framework
codeigniter ini : (perlu diketahui konfigurasinya terdapat pada folder config)
Ceritanya saya akan membuat aplikasi sederhana tentang pengolahan data absensi (namanya juga
cerita saya, jadi terserah saya aahahahahaa -agak sedikit pemaksaan-)
1. autoload.php, file ini berisi tentang resource (library, helper, plugins, model, fungsi )
yang akan langsung di load secara otomatis ketika aplikasi akan dijalankan.
Misalnya :
$autoload[libraries]=array(database,form_validation,table);
$autoload[helper]=array(form,url);
$autoload[plugin]=array();
$autoload[config]=array();
$autoload[language]=array();
$autoload[model]=array();
2. config.php, konfigurasi dasar pada aplikasi yang akan dibuat. Konfigurasi pertama
yang dilakukan adalah menentukan base_url() dari aplikasi anda
$config[base_url]=http://example.com/ diisi sesuai dengan aplikasi;
Keuntungan menggunakan cara ini adalah anda tidak perlu menulis ulang secara
lengkatp url jika diperlukan, misalnya untuk menentukan action pada form. Cukup
dengan menggunakan fungsi base_url(). Apalagi jika anda harus mengalihkan aplikasi
anda pada server lain, maka anda cukup mengganti base_url anda.Hal kedua adalah
mengatur konfigurasi encrytion key untuk menjalankan session.
$config['encryption_key'] = 'iBo5B9' diisi terserah;
3. database.php
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "root";
$db['default']['password'] = "";
$db['default']['database'] = "crud" ; diisi sesuai dengan database yang sudah
dibuat

Ok, tidak perlu kebanyakan basa basi ,mari kita lanjut ke langkah-langkahnya
Pertama-tama kita buat dulu tabel tabel_person pada database untuk menyimpan data tersebut.
Dengan perintah sql seperti dibawah ini :
Create table tabel_person(
id int(4) not null auto increment primary key,
nama varchar(100),
tgl_lahir date);
Tabel di dalam database sudah dibuat , dan sekarang lanjut ke penulisan kode karena codeigniter
itu bersifat MVC (model view controller), penulisan kode apa duluan yang dilakukan ya ??? bingung
??? jangan bingung kita lakukan bagian view terlebih dahulu
View(personI nput.php)
saya membuat view dengan nama personInput.php dan disimpan dalam direktori view. Isi dari
personInput.php sebagai berikut:
1 <form action="PersonController/input">
2 <table border="0">
3 <tr>
4 <td>Nama</td>
5 <td>:</td>
6 <td><input name="nama" type="text"></td>
7 </tr>
8 <tr>
9 <td>Tanggal Lahir</td>
10 <td>:</td>
11 <td>
12 <select name="tanggal">
13 <?php for($tgl=1;$tgl<=30;$tgl++):?>
14 <option value="<?php echo $tgl?>"><?php echo
$tgl;?></option>
15 <?php endfor;?>
16 </select>
17 <select name="bulan">
18 <?php for($bln=1;$bln<=12;$bln++):?>
19 <option value="<?php echo $bln?>"><?php echo
$bln;?></option>
20 <?php endfor;?>
21 </select>
22 <select name="thn">
23 <?php for($thn=1970;$thn<=2015;$thn++):?>
24 <option value="<?php echo $thn?>"><?php echo
$thn;?></option>
25 <?php endfor;?>
26 </select>
27 </td>
28 </tr>
29 <tr><td rowspan="3"><input type="submit" name="submit"
value="simpan"></td></tr>
30 </table>
31 </form>
View ini sangat sederhana, sangat dasar dan mudah dipahami.
Penjelasan :
<?php for($tgl=1;$tgl<=31;$tgl++):?> pada baris 13 merupakan perulangan
yang nantinya akan ditampilkan sebagai tanggal dengan patokan 1 bulan = 31 hari.
<?php for($bln=1;$bln<=12;$bln++):?> pada baris 18 merupakan perulangan yang
akan ditampilkan sebagai bulan dengan patokan 1 tahun=12 bulan.
<?php for($thn=1970;$thn<=2015;$thn++):?> pada baris 23 merupakan perulangan
yang akan ditampilkan sebagai tahun dengan patokan dari tahun 1970-sampai 2015.
Tiga point diatas, nantinya akan include ke dalam 1 field dalam tabel person
Setelah view, kita mau nulis kode apa lagi ???
kita akan melakukan penulisan kode di bagian model(perlu diketahui model ini tempaa semua fungsi-
fungsi mengenai manipulasi database seperti insert, update, delete, select , join dan lain-lain) .. mari
kita lihat bagaimana penulisan kode-nya
model (personModel.php)
1 <?
2 class PersonModel extends CI_Model{
3 function insert(){
4 $this->db->set('nama',$this->input->post('nama'));
5 $this->db->set('tgl_lahir',$this->input->post('tahun').'-
'.$this->input->post('bulan').'-'.$this->input->post('tanggal'));
6 return $this->db->insert('tabel_person');
7 }
8 }
9 ?>
Penjelasan:
class personModel extends CI_Model, pada baris ke-1 maksudnya membuat
class model dengan nama personModel.
Pada baris ke-3 sampai baris ke-7 merupakan fungsi insert data/ penambahan data
$this->db->set('nama',$this->input->post('nama')), pada baris ke- 4
merupakan fungsi untuk menge-set field nama dalam tabel_person dengan inputan dari view
personInput.php dengan fungsi $this->input->post('nama')).
Controller
Controller itu seperti apa sih ?? bentar lagi dijelaskan kok (sabar...sabar...sabar) pada intinya
controller digunakan untuk menyatukan data yang dikirimkan dari view dan model , boleh
dibilang sebagai pemrosesan data dari view dan model
Gimana penulisan kodenya ??
1 <?php
2 class PersonController extends CI_Controller{
3 public function __construct() {
4 parent::__construct();
5 $this->load->model('PersonModel');
6 }
7 function index(){
8 $this->load->view('personInput');
9 }
10 function input(){
11 if($this->input->post('submit')):
12 $this->PersonModel->insert();
13 endif;
14 $this->load->view('personInput');
15 }
16 }
17 ?>
Penjelasan:
class PersonController extends CI_Controller, maksudnya membuat class
dengan nama PersonController, dengan catatan nama class harus diawali dengan
huruf kapital.
Pada baris ke-7 sampai ke-9 merupakan fungsi default controller yang nanti jika
ditampilkan fungsi ini yang akan ditampilkan.
Pada baris ke-10 sampai ke-15 merupakan fungsi input data dengan mengambil data
dari model ($this->PersonModel->insert() ) dan juga view ($this->load-
>view('personInput')).

Anda mungkin juga menyukai