Delete Data Pada CodeIgniter

9 Oct 2018 11:17 2322 Hits 0 Comments
Bagaimana caranya agar data bisa dihapus?

Di artikel sebelumnya sudah banyak dibahas mengenai berbagai dasar-dasar penggunaan dari framework CodeIgniter. Mulai dari strukturnya, cara menampilkan halaman web, penerapan Model View Controller, sampai sebelumnya pembahasan mengenai cara memasukkan data dan mengubah data.

Pada kesempatan kali ini akan dibahas mengenai satu bagian CRUD lainnya selain Insert Data dan Update Data. Ya, bagian ini adalah Delete Data atau menghapus data. Bagian ini juga tidak kalah pentingnya dengan Insert Data dan Update Data. Mengapa?Karena sesuai dengan singkatan CRUD, dimana CREATE artinya membuat data, atau sama dengan Insert Data, READ artinya membaca data, UPDATE artinya mengubah data, dan DELETE artinya menghapus.

Jadi, Delete ini merupakan salah satu elemen yang tak kalah penting dengan Insert dan Update. Bagaimana caranya agar data bisa dihapus?Berikut inilah ulasannya.

Sama seperti dengan bagian penting dari CI, hal pertama yang harus kita lakukan yaitu membuat sebuah route khusus mendelete data. Klausa yang digunakan hampir sama dengan cara untuk mengupdate data, yaitu sebagai berikut:

$route['nama_folder_bila_ada/file_delete/data_yang_dipilih'] = 'nama_controller/method_delete/kriteria_where_yang_digunakan';

Penjelasan:

Sama seperti update data, bila file delete diletakkan disebuah folder, maka sebutkan nama folder tersebut, barulah sebut nama file delete pada URL. Agar data yang kita hapus sesuai dengan yang kita pilih, misal data yang dipilih adalah data ke-3, maka harapannya adalah data yang dipilih tersebut terhapus dari database. Maka, untuk penulisan di URL, pada route, klausa data_yang_dipilih menggunakan klausa (:any).

Ada juga klausa kriteria_where_yang_digunakan, apa maksudnya?Sama seperti halnya penggunaan query DELETE FROM nama_table WHERE... yaitu data yang dihapus tersebut berdasarkan apa, misalnya berdasarkan username. Maka dari itu, agar spesifik, pada route klausa tersebut ganti dengan klausa $1.

Setelah route dibuat, pada halaman utama yang menampilkan data yang akan dihapus, masukkanlah tombol hyperlink dengan alamat url nya terhubung dengan controller yang digunakan. Penggunaannya sebagai berikut:

a href=<!--?php echo site_url(âcontroller/method_delete/kriteriaâ) ?-->Delete

Bila sudah dibuat, masuklah pada model yang akan digunakan untuk membuat query delete. Mengapa tidak ke controller?Karena model bisa terintegrasi langsung dengan database, sementara controller tidak bisa. Maka dari itu, query delete dibuat di dalam model. Bagaimana cara membuat query tersebut?Penjelasannya sebagai berikut:

public function nama_method_delete($menyesuaikan){

    return $this->db->delete('tabel', array('kolom_yang_dipilih' => $menyesuaikan));

  }

Ada dua cara dalam membuat query delete ini, yang pertama seperti yang dijelaskan diatas. Sama seperti update data, untuk menghapus data, memerlukan kolom apa yang dipilih untuk melakukan delete tersebut. Misalnya data yang dihapus akan berdasarkan id, maka pada klausa kolom_yang_dipilih tulislah id.

Lalu ada cara yang kedua yang dijelaskan sebagai berikut:

public function nama_method_delete($menyesuaikan){

    $data = $this->db->where('kolom_yang_dipilih', $menyesuaikan);

    return $this->db->delete('tabel', $data);

  }

Setelah query delete dibuat, barulah ke bagian controller. Disini, penggunaan method delete sangat berbeda sekali dengan method insert dan update pada bagian controller. Mengapa?Karena pada bagian delete, hanya akan dilakukan penghapusan data tanpa melakukan validasi terlebih dahulu. Berbeda dengan insert dan update yang diharuskan adanya validasi.

Lalu, apa isi dari method delete ini?Isinya hanya memuat method delete pada model yang dibuat sebelumnya. Bila data yang dipilih sesuai, data pun akan terhapus. Penjelasannya dijelaskan sebagai berikut:

public function method_delete($menyesuaikan){

    $this->nama_model->method_delete_pada_model($menyesuaikan);

    redirect('halaman_utama');

  }

Jadi, setelah data sukses dihapus, akan diarahkan ke halaman utama kembali. Itulah artikel mengenai delete data pada CodeIgniter. Semoga dapat bermanfaat bagi kalian semua.
Tags

About The Author

Aldi Saepurahman-4 39
Ordinary

Aldi Saepurahman-4

My Coding My Adventure
Plimbi adalah tempat menulis untuk semua orang.
Yuk kirim juga tulisanmu sekarang
Submit Artikel