Senin, 01 April 2013

CRUD Codeigniter - Menghapus Data

Sebagai akhir dari seluruh tutorial operasi CRUD Codeigniter, kali saya akan memberikan tutorial proses Hapus Data. Ini operasi yang terakhir tentang dasar Codeigniter.
Dalam pembuatan proses penghapusan data, hendaknya kita tambahkan function hapusdata pada file controller ckomentar.php.
?
1
2
3
4
function hapusdata($id) {
        $this->db->delete('komentar', array('id' => $id));
        redirect('ckomentar/index');
}
Pada skrip diatas, dapat didefinisikan bahwa kita membuat function hapusdata yang menangkap variabel $id, kemudian didalamnya mengandung penghapusan terhadap tabel komentar berdasarkan id yang tertangkap.. selanjutnya halaman akan diarahkan kepada posisi index.
Demikian tutorial singkat dari saya. Semoga bermanfaat.

CRUD Codeigniter - Mengubah Data

yang harus kita perhatikan ada lah membuat 2 function pada file model (mkomentar.php). tambahkan 2 function berikut :
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function update($id){
        $nama = $this->input->post('nama');
        $url = $this->input->post('url');
        $pesan = $this->input->post('pesan');
        $data = array(
            'nama' => $nama,
            'url' => $url,
            'pesan' => $pesan
            );
        $this->db->where('id', $id);
        $this->db->update('komentar', $data);
}
 
function select($id){
       return $this->db->get_where('komentar', array('id' => $id))->row();
}

?
1
 


Penjelasan singkat :
intinya nih, function update digunakan untuk aksi perubahan data. sedangkan function select digunakan untuk menampilkan data terlebih dahulu sebelum diupdate. untuk penjelasan masing-masing kode.
Langkah selanjutnya tinggal tambahkan saja pada file controller ckomentar.php berikut :
?
1
2
3
4
5
6
7
8
9
10
11
12
function updatedata($id) {
        if($_POST==NULL) {
            $this->load->model('mkomentar');
            $data['hasil'] = $this->mkomentar->select($id);
            $this->load->view('ubahkomentar', $data);
        }
        else {
            $this->load->model('mkomentar');
            $this->mkomentar->update($id);
            redirect('ckomentar/index');
        }
}

Penjelasan Kode :
jika dilogikan maka akan membentuk kalimat seperti berikut :
- jika $_POST bersifat NULL (kosong) dalam artian belum diklik tombol Update pada form ubah data, maka akan dilakukan sesi selanjutnya, yaitu me-load file model mkomentar.phpselanjutnya dikirimlah $id kepada function select dalam model mkomentar.. seperti yang sudah dibuat itu loh?.. untuk menampilkan datanya dulu.. kan konsep operasi ubah data itu, tampilkan data dulu baru dilakukan update. kurang lebihnya seperti itu.. nah pada aksi ini akan di-load file view ubahkomentar.php yang merupakan form ubah data itu sendiri.
- jika ternyata $_POST bersifat bukan NULL, maka akan di-load file model mkomentar.phpkemudian dipanggil function update dalam model mkomentar yang merupakan aksi perubahan data. kemudian akan diarahkan kepada halaman index.
karena pada skrip tersebut di-load form ubah ubahkomentar.php, maka kita tinggal buat saja formnya. skripnya seperti berikut :
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<html>
<head>
    <title> Menambah Data </title>
</head>
<body>
<h3> Tambah Data </h3>
php echo form_open('ckomentar/updatedata/'.$hasil->id); ?>
 
<table>
<tr>
    <td> Nama </td>
    <td> : </td>
    <td> php echo form_input('nama', $hasil->nama); ?> </td>
</tr>
<tr>
    <td> Url </td>
    <td> : </td>
    <td> php echo form_input('url', $hasil->url); ?> </td>
</tr>
<tr>
    <td> Pesan </td>
    <td> : </td>
    <td> php echo form_textarea('pesan', $hasil->pesan); ?> </td>
</tr>
<tr>
    <td> php echo form_submit('submit', 'Submit', 'id="submit"'); ?> </td>
</tr>
</table>
php echo form_close(); ?>
 
</body>
</html>

Selesailah aksi dari proses tambah data ini..
untuk mengubah data tinggal buka saja url http://localhost/namaFolderCodeigniterAnda/index.php/ckomentar. terus tinggal klik saja link Editnya (itu juga jika Anda mengikuti step by step dari tutorial sebelumnya.
atau jika mau instan, bisa buka url http://localhost/namaFolderCodeigniterAnda/index.php/ckomentar/updatedata/idKomentar

CRUD Codeigniter – Menampilkan Data

Kita masih menggunakan tabel komentar. untuk menampilkan data, tambahkan pada file model yang telah dibuat sebelumnya, yaitu mkomentar.php.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Mkomentar extends Model {
 function ambil() {
 $ambil = $this->db->get('komentar');
 if ($ambil->num_rows() > 0) {
 foreach ($ambil->result() as $data) {
 $hasil[] = $data;
 }
 return $hasil;
 }
 }
// function sesudahnya
}
?>

Penjelasan Kode :
- pada baris kode 1, merupakan skrip untuk membuat function bernama ambil.
- pada baris ke-2, skrip untuk mengambil seluruh data dalam tabel komentar, kemudian menaruhnya pada variabel $ambil. jika dalam PHP classic sama saja dengan kode $ambil = SELECT * from komentar.
- pada baris ke-3, jika jumlah (num_rows) pada variabel $ambil lebih dari pada 0, maka akan dilakukan sesi selanjutnya.
- pada baris ke-4, skrip untuk mengulang suatu perintah bernilai array menjadi kesatuan variabel $data.
- pada baris ke-5, menjadikan satu $data menjadi satu kesatuan $hasil.
- pada baris ke-7, sehingga akan menghasilkan nilai variabel $hasil. $hasil ini akan dikembalikan kepada function controller untuk ditampilkan.
setelah kita mengubah pada file model, maka selanjutnya kita juga menambahkan function baru pada file controller, yaitu pada file ckomentar.php. berikut skrip penambahan functionnya :
?
1
2
3
4
5
function index() {
        $this->load->model('mkomentar');
        $data['hasil'] = $this->mkomentar->ambil();
        $this->load->view('vkomentar', $data);
    }

Penjelasan Kode :
- Pada baris ke-1, merupakan perintah untuk membuat function index.
- pada baris ke-2, skrip untuk me-load file model mkomentar.
- pada baris ke-3, skrip untuk mengakses function ambil dalam class model Mkomentar, kemudian menyimpannya ke dalam variabel $data.
- Pada baris ke-4, skrip untuk me-load file view bernama vkomentar.php dimana telah disertakan variabel $data yang siap untuk ditampilkan pada file tersebut.
Langkah yang terakhir, karena pada function view di-load file view bernamavkomentar.php, maka kita buat file view dengan nama tersebut dan simpan dalam foldersystem/application/views.. skripnya sangat sederhana kok.. dan saya jamin.. pasti sudah tidak asing lagi ama yang uda hobi dengan PHP.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<html>
<head>
 <title> View Latihan 1 </title>
</head>
<body>
<h3> php echo anchor('ckomentar/tambahdata', 'Tambah data'); ?> </h3>
php
if (empty ($hasil)) {
 echo "Tidak ada data";
}
else {
?>
<h3> Daftar Komentar </h3>
<table border=1>
<tr>
 <th> No </th>
 <th> Nama </th>
 <th> URL </th>
 <th> Pesan </th>
 <th> Aksi </th>
</tr>
php
$no = 1;
foreach ($hasil as $data):
?>
<tr>
 <td> php echo $no; ?> </td>
 <td> php echo $data->nama; ?> </td>
 <td> php echo $data->url; ?> </td>
 <td> php echo $data->pesan; ?> </td>
 <td> <a href="updatedata/id; ?>"> Ubah </a> | <a href="hapusdata/id; ?>"> Hapus </a> </td>
</tr>
php
$no++;
endforeach;
?>
</table>
php
}
?>
</body>
</html>

CRUD Codeigniter – Menambah Data

Sebelumnya siapkan databasenya terlebih dahulu, misalnya nama databasenya adalah latihanci.
pada database tersebut memiliki sebuah tabel bernama tabel komentar, dengan spesifikasi field sebagai berikut :
—————————————————————
Field   | Type     | Length | PrimaryKey | Autoincreament
—————————————————————
id           | INT          | 11       | *               | *
nama    | Varchar | 50
url         | varchar  | 100
pesan   | TEXT


Langkah pertama :
buka file autoload.php yang terdapat dalam folder system/application/config. kemudian lakukan konfigurasi load helper dan library berikut :
$autoload['libraries'] = array(‘table’, ‘database’);
$autoload['helper'] = array(‘url’, ‘html’, ‘form’);
Penjelasan Kode :
- pada konfigurasi tersebut kita load database yang berfungsi untuk me-load database dari model yang akan kita buat secara otomatis. lalu pada helper, kita lakukan load otomatis pada url (untuk redirect), html (agar bisa menggunakan penanganan kode html), dan form (sama seperti html).
Langkah kedua :
Buka file database.php yang terdapat dalam folder system/application/config, berguna untuk melakukan konfigurasi agar terkoneksi dengan database. lakukan konfigurasi pada skrip berikut :
$db['default']['hostname'] = “localhost”; // Server lokal
$db['default']['username'] = “root”; // Username MySQL
$db['default']['password'] = “”; // Password MySQL
$db['default']['database'] = “latihanci”; // Nama database yang digunakan
$db['default']['dbdriver'] = “mysql”; // kita menggunakan MySQL sebagai database


Langkah ketiga : (Membuat file Model)
buat file model dengan nama mkomentar.php dan simpan dalam foldersystem/application/models. isi skripnya seperti berikut :
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Mkomentar extends Model {
 
   function tambah() {
       $nama = $this->input->post('nama');
       $url = $this->input->post('url');
       $pesan = $this->input->post('pesan');
       $data = array(
           'nama' => $nama,
           'url' => $url,
          'pesan' => $pesan
           );
      $this->db->insert('komentar', $data);
   }
}
?>

Penjelasan Kode :
- pada baris ke-2, merupakan deklarasi untuk menciptakan class model bernama mkomentar.
- pada baris ke 4, skrip untuk menciptakan function tambah guna proses tambah data.
- pada baris ke 5 s/d 7, tahu kan?.. kalo di PHP classic mah dapat disamakan seperti kode :
$nama = $_POST['nama'];
$url = $_POST['url'];
$pesan = $_POST['pesan'];
- pada baris 8 s/d 12, untuk menjadikan inputan tersebut kedalam bentuk array.
- pada baris ke-13, proses penyimpanan kedalam tabel komentar.

Langkah keempat : (Membuat File Controller)
Buat file controller dengan nama ckomentar.php dan simpan dalam foldersystem/application/controllers. adapun isi skripnya seperti berikut :
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 Class Ckomentar extends Controller {
 
    function tambahdata() {
 
        if ($this->input->post('submit')) {
            $this->load->model('mkomentar');
            $this->mkomentar->tambah();
            redirect('ckomentar/index');
        }
 
        $this->load->view('tambahkomentar');
    }
 }
 ?>

Penjelasan Kode :
- pada baris ke-2, skrip deklarasi untuk menciptakan class controller bernama ckomentar.
- pada baris ke-4, skrip untuk menciptakan function tambahdata.
- pada baris ke-6, jika diklik tombol submit dari form, maka akan dilakukan proses selanjutnya.
- pada baris ke-7, skrip untuk me-load model mkomentar.php
- pada baris ke-8, proses pemanggilan function tambah pada class model mkomentar, disinilah proses penyimpanan tersebut dilakukan.
- pada baris ke-9, skrip untuk mengarahkan (redirect) kepada posisi ckomentar.
- pada baris ke-12, skrip untuk melakukan load file view form tambah data.


Langkah kelima : (Membuat File View)
karena pada skrip diatas me-load file view bernama tambahkomentar, maka kita buat file view bernama tambahdata.php dan simpan dalam folder system/application/views. adapun skripnya seperti berikut :
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<html>
<head>
<title> Menambah Data </title>
</head>
<body>
 
<h3> Tambah Data </h3>
php echo form_open('ckomentar/tambahdata'); ?>
 
<table>
<tr>
<td> Nama </td>
<td> : </td>
<td> php echo form_input('nama'); ?> </td>
</tr>
<tr>
<td> Url </td>
<td> : </td>
<td> php echo form_input('url'); ?> </td>
</tr>
<tr>
<td> Pesan </td>
<td> : </td>
<td> php echo form_textarea('pesan'); ?> </td>
</tr>
<tr>
<td> php echo form_submit('submit', 'Submit', 'id="submit"'); ?> </td>
</tr>
</table>
php echo form_close(); ?>
 
</body>
</html>

Selesai sudah pembuatan proses tambah data. untuk mencobanya bisa klik di http://localhost/namafoldercodeigniterAnda/index.php/ckomentar/tambahdata.

Source

Twitter Delicious Facebook Digg Stumbleupon Favorites More