Cara Membuat Multiple Delete di Codeigniter 2

tulisan blog -Cara Membuat Multiple Delete di Codeigniter 2

Pada kesempatan kali ini saya akan membahas mengenai codeigniter kembali, tutorial yang akan saya bahas yaitu bagaimana cara membuat multiple delete di codeigniter ? sebelumnya saya juga telah membahas mengenai tutorial codeigniter yaitu  Cara membuat Bootstrap pagination di codeigniter dan Cara Menggunaka Bootstrap Datepicker 3 di codeigniter. 

Multiple delete yang saya akan buat kali ini menggunakan property cekbox, jadi ketika kita memilih beberapa data  dengan mencentrang checkboxnya maka data tersebut bisa dihapus sekaligus.
Langsung saja kita bahas ke tahap pembuatannya, dan seperti berikut tampilan dari tutorial multiple delete yang telah jadi ini.
1. Kita siapkan terlebih dahulu database dan table yang akan kita gunakan, disini saya menggunakan
    database dengan nama : db_mahasiswa dan tablenya : table_mahasiswa
    dan berikut ini struktur dari table_mahasiswa yang digunakan.
       
Lalu masukan beberapa data kedalam table tersebut, kalian bisa langsung mengcopy sql data tersebut dibawah ini.

INSERT INTO `db_mahasiswa`.`table_mahasiswa` (`Nim`, `Nama`, `Jurusan`, `Semester`) VALUES (NULL, ‘Ucok’, ‘Teknik Informatika’, ‘2’), (NULL, ‘Udin’, ‘Sistem Informasi’, ‘1’), (NULL, ‘Andi’, ‘Kimia’, ‘2’), (NULL, ‘Heryawan’, ‘Design’, ‘4’), (NULL, ‘Deden’, ‘DKV’, ‘5’);

2. Selanjutnya buat project codeigniter baru lalu berinama folder tersebut multiple_delete dan      
    simpan di folder htdocs kalian setelah itu  konfigurasi codeigniter kalian seperti biasanya, dan
    berikut ini beberapa library dan helper yang digunakan dalam project ini.

    Libraries dan helper yang digunakan 


  Jika kalian memiliki masalah encryption key karena menggunakan libraries session, maka cukup
  mengisikan kata : really_long_number pada konfigurasi encryption key di file config.php seperti
  gambar dibawah :
Lalu setting file routes dan ganti controller default yang akan kita gunakan seperti gambar dibawah
 3. Setelah tahap konfigurasi database dan codeigniter selesai, Maka selanjutnya kita buat file models
     yang akan kita gunakan, buat file php baru dan beri nama : mdl_delete lalu simpan di folder
     aplication/models dan isikan script dibawah ini.


<?php

class Mdl_delete extends CI_Model {

/* function script untuk mengambil data dari database */
function get_data(){

$query = $this->db->get('table_mahasiswa');
return $query->result();
}

/* function script delete yang digunakan */
function delete_multiple($id) {

foreach($id as $hapus){

return $this->db->query("delete from content where id = '$hapus'");

}
}
}
?>

4. Selanjutnya kita buat fle controllernya, buat file php baru lalu beri nama : delete dan simpan di 
   folder aplication/controllers lalu isikan script dibawah .
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Delete extends CI_Controller {

public function __Construct(){
parent ::__construct();

/* fungsi untuk menload model yang akan digunakan */
$this->load->model('mdl_delete');
}

public function index() {

$this->show();
}

/* Fungsi untuk menampiklan data */
public function show() {

$data['data'] = $this->mdl_delete->get_data();
$this->load->view('view_data',$data);
}


/* Fungsi untuk multiple delete yang digunakan */
function delete_multiple() {

$config = array(

array(
'field' => 'nim', /* Nama parameter dari checkbox */
'label' => 'Cek Box',
'rules' => 'required|xss_clean'
)
);

$this->form_validation->set_message('required','Cek bok Harus Dipilih');
$this->form_validation->set_rules($config);

/* Validasi untuk pengecekan jika tidak ada data yand dipilih */

if($this->form_validation->run() == FALSE){


$this->session->set_flashdata('warning',TRUE);
redirect('delete/'.$_POST['kode_nim'].''); /*kode nim diambil dari parameter textboxt yang ada pada view */

}else{

foreach($_POST['nim'] as $hapus){
$this->db->query("DELETE FROM `table_mahasiswa` WHERE `Nim` = '$hapus'"); /*Query untuk menghapus data*/
}

$this->session->set_flashdata('delete_sukses',TRUE);
redirect('delete/'.$_POST['kode_nim'].'');

}


}

}

?>

5. Dan terakhir kita buat untuk viewsnya, buat file php baru lalu berinama : view_data dan simpan
    di folder application/views lalu masukan script dibawah.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Multiple Delete</title>
</head>

<body>
<h1>Multiple Delete dengan Codeigniter 2</h1>
<hr />

<?php
/* Script untuk menampilkan pesan */

if($this->session->flashdata('delete_sukses')){
echo '<div class="alert alert-success" style="color:green;"><h3>Data berhasil dihapus</h3></div>';
}elseif($this->session->flashdata('warning')){
echo '<div class="alert alert-warning" style="color:red;"><h3>Cek bok Harus Dipilih</h3></div>';
}
echo validation_errors('<div class="alert alert-warning"><a class="close" data-dismiss="alert">&times;</a>','</div>');
?>

<form id="form1" name="form1" method="post" action="<?php echo base_url()?>index.php/delete/delete_multiple">
<table width="600" border="1">
<tr>
<td>Pilih</td>
<td>Nim</td>
<td>Nama</td>
<td>Jurusan</td>
<td>Semester</td>
</tr>
<?php
/* Fungsi untuk menampilkan data dalam table */
foreach($data as $row):?>
<tr>
<td>
<input name="nim[]" type="checkbox" value="<?php echo $row->Nim?>" /> <!-- propery checkbox yang digunakan -->
<input name="kode_nim" type="hidden" value="<?php echo $this->uri->segment(3); ?>" /> <!-- Property textbox yang digunakan -->
</td>
<td><?php echo $row->Nim ?></td>
<td><?php echo $row->Nama ?></td>
<td><?php echo $row->Jurusan ?></td>
<td><?php echo $row->Semester ?></td>
</tr>
<?php endforeach ?>
</table>
<br />
<input name="Submit" type="submit" value="Hapus yang dipilih" /> <!-- Button yang digunakan untuk mengapus data -->
</form>
</body>
</html>

Selanjutnya silahkan buka dibrowser lalu ketikan localhost/multiple_delete maka akan muncul tampilan seperti pada gambar dibawah
dan berikut ini tampilan ketika project dijalankan ketika menghapus data dan tidak ada data yang dihapus.
Tampilan ketika tidak ada data yang dipilih
Tampilan ketika data berhasil dihapus 

Sekianlah tutorial codeigniter pada kali ini, jika kalian mengikuti step diatas dengan berna maka dijamin tidak ada yang error, jika menemukan kesulitan kalian bisa menanyakannya di kolom komentar.
Sourcode atau file project ini juga bisa kalian download dibawah ini untuk mempermudah belajar teman – teman sekalian. Terimakasih telah berkunjung di blog ini semoga tutorial ini bisa bermanfaat bagi kalian semua yang mebutuhkannya.
 Multiple Delete Codeigniter

Leave a Reply

Your email address will not be published. Required fields are marked *