Anda di halaman 1dari 5

Tutorial Edit atau Update Data dengan Code

Igniter (CRUD bagian 3)


Untuk mengikuti tutorial ini, ada baiknya Anda simak dulu tutorial saya sebelumnya
Menambahkan atau Insert Data ke Database dengan Code Igniter

Sangat belum lengkap rasanya kalo cuma bisa read dan create aja, fungsi update dan delete
belum ada. Ayo dah kita bikin fungsi update nya dulu.

1. Pertama buat link untuk update dan delete di view view_mahasiswa.php.

view source

print?

01 <?php
02 if (empty($hasil)) {
03 echo "Tidak ada data mahasiswa";
04 }
05 else {
06 ?>
07 <h3> Daftar Mahasiswa </h3>
08 <?php echo anchor('con_mahasiswa/tambahdata', '+ Tambah Data'); ?>
09 <table>
10 <tr bgcolor="FF8844">
11 <th> No </th>
12 <th> Nim </th>
13 <th> Nama </th>
14 <th> Alamat </th>
15 <th> Email </th>
16 <th> Aksi </th>
17 </tr>
18 <?php
19 $no = 1;
20 foreach ($hasil as $data):
21 ?>
22 <tr>
23 <td> <?php echo $no; ?> </td>
24 <td> <?php echo $data->nim; ?> </td>
25 <td> <?php echo $data->nama; ?> </td>
26 <td> <?php echo $data->alamat; ?> </td>
27 <td> <?php echo $data->email; ?> </td>
<td> <a href="con_mahasiswa/updatedata/<?php echo $data->id; ?>">
28 Ubah </a> | <a href="con_mahasiswa/hapusdata/<?php echo $data->id;
?>"> Hapus </a> </td>
29
30 </tr>
31 <?php
32 $no++;
33 endforeach;
34 ?>
35 </table>
36 <?php
37 }
38 ?>

2. Ubah controller con_mahasiswa.php menjadi seperti ini.

view source

print?

01 <?php
02 Class Con_mahasiswa extends Controller {
03 function con_mahasiswa()
04 {
05 parent::Controller();
06 $this->load->model('mod_mahasiswa');
07 $this->load->helper(array('url','form'));
08 }
09 function index() {
10 $data['hasil'] = $this->mod_mahasiswa->getall();
11 $this->load->view('view_mahasiswa', $data);
12 }
13
14 function tambahdata() {
15 if($this->input->post('submit')){
16 $this->mod_mahasiswa->tambah();
17 redirect('con_mahasiswa');
18 }
19 $this->load->view('tambah_mahasiswa');
20 }
21
22 function updatedata($id) {
23 if($this->input->post('submit')){
24 $this->mod_mahasiswa->update($id);
25 redirect('con_mahasiswa');
26 }
27 $data['hasil'] = $this->mod_mahasiswa->getById($id);
28 $this->load->view('update_mahasiswa', $data);
29
30 }
31 }
32 ?>

Jika submit terjadi, maka jalankan fungsi update pada model mod_mahasiswa sesuai
dengan id yang dipilih.

3. Ubah model mod_mahasiswa.php menjadi

view source

print?

01 <?php
02 class Mod_mahasiswa extends Model {
03 function getall() {
04 $ambildata = $this->db->get('tb_mahasiswa');
05 //jika data ada (lebih dari 0)
06 if ($ambildata->num_rows() > 0 ) {
07 foreach ($ambildata->result() as $data) {
08 $hasil[] = $data;
09 }
10 return $hasil;
11 }
12 }
13
14 function tambah() {
15 $nim = $this->input->post('nim');
16 $nama = $this->input->post('nama');
17 $alamat = $this->input->post('alamat');
18 $email = $this->input->post('email');
19 $data = array (
20 'nim' => $nim,
21 'nama' => $nama,
22 'alamat'=> $alamat,
23 'email' => $email
24 );
25 $this->db->insert('tb_mahasiswa',$data);
26 }
27
28 function update($id) {
29 $nim = $this->input->post('nim');
30 $nama = $this->input->post('nama');
31 $alamat = $this->input->post('alamat');
32 $email = $this->input->post('email');
33 $data = array (
34 'nim' => $nim,
35 'nama' => $nama,
36 'alamat'=> $alamat,
37 'email' => $email
38 );
39 $this->db->where('id', $id);
40 $this->db->update('tb_mahasiswa', $data);
41 }
42
43 function getById($id) {
return $this->db->get_where('tb_mahasiswa', array('id' =>
44
$id))->row();
45 }
46 }
47 ?>

baris 29-32, menangkap data inputan


baris 33-38, data disimpan dalam array
baris 39-40, sintax update data dari tb_mahasiswa berdasarkan id yang telah dipilih.
baris 43, fungsi untuk mendapatkan data berdasarkan id yang telah dipilih

4. Bikin view baru dan beri nama update_mahasiswa. Copi code berikut

view source

print?

01 <html>
02 <head>
03 <title> Edit Data Mahasiswa</title>
04 </head>
05 <body>
06 <h3> Edit Data Mahasiswa</h3>
07 <?php echo form_open('con_mahasiswa/updatedata/'.$hasil->id); ?>
08
09 <table>
10 <tr>
11 <td> NIM </td>
12 <td> <?php echo form_input('nim', $hasil->nim); ?> </td>
13 </tr>
14 <tr>
15 <td> Nama </td>
16 <td> <?php echo form_input('nama', $hasil->nama); ?> </td>
17 </tr>
18 <tr>
19 <td> Alamat </td>
20 <td> <?php echo form_input('alamat', $hasil->alamat); ?> </td>
21 </tr>
22 <tr>
23 <td> Email </td>
24 <td> <?php echo form_input('email', $hasil->email); ?> </td>
25 </tr>
26 <tr>
27 <td> </td>
28 <td> <?php echo form_submit('submit', 'Ubah'); ?> </td>
29 </tr>
30 </table>
31 <?php echo form_close(); ?>
32
33 </body>
34 </html>

5. Dan sekarang coba lakukan edit data


http://localhost/mycodeigniter/index.php/con_mahasiswa

Anda mungkin juga menyukai