Membuat Fungsi Delete Record Menggunakan Codeigniter

Biasanya, fungsi delete record terdapat di halaman admin sebuah website dimana hanya web administrator saja yang memiliki hak akses untuk melakukannya.

Tutorial ini melanjutkan dari tutorial sebelumnya yang membahas tentang menampilkan data dari dalam database. Di tutorial ini kita akan menambahkan fungsi delete untuk menghapus data tersebut dari dalam database.

Anda dapat menggunakan file di tutorial sebelumnya, dan mengubah source code di tutorial tersebut mengikuti source di bawah:

Delete Record Menggunakan Codeigniter

Berikut ini adalah source code untuk membuat delete record menggunakan Codeigniter. Seperti biasa saya menuliskan source code berurutan dari controller, model, dan terakhir di bagian views.

Controller

Perlu diperhatikan bahwa dari source code di bawah kita menggunakan URL helper dari Codeigniter. Oleh karena itu pastikan anda menyertakan helper URL di folder application/config/autoload.php

$autoload['helper'] = array('url');

Tambahkan source code di user_controller.php menjadi seperti berikut:

user_controller.php

<?php
class User_controller extends CI_Controller{

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

    function user()
    {
        $this->load->model('user_model');
        $data['judul'] = 'Delete Record Menggunakan Codeigniter';
        $data['daftar_user'] = $this->user_model->get_user_all();
        $this->load->view('daftar_user', $data);
    }

    function delete_user($id_user)
    {
        $this->load->model('user_model');
        $username = $this->user_model->delete_user($id_user);
        redirect('user_controller/user');
    }
}

Model

Bukalah file user_model.php dan tambahkan fungsi untuk melakukan delete record seperti pada source berikut:

user_model.php

<?php
class User_model extends CI_Model{

    function get_user_all()
    {
        $query=$this->db->query("SELECT * FROM user ORDER BY id_user DESC");
        return $query->result();
    }

    function delete_user($id_user)
    {
        $query=$this->db->query("DELETE FROM user WHERE id_user='$id_user'");
    }
}

Views

Bukalah daftar_user.php dan sesuaikan dengan source code berikut ini:

daftar_user.php

<html>
<head>
	<title><?php echo $judul; ?></title>
</head>
<body>
	<h1>Daftar User</h1>
	<table border="1">
		<thead>
		<tr>
			<th>Nama Lengkap</th>
			<th>Username</th>
			<th>Email</th>
			<th>Alamat</th>
			<th>Action</th>
		</tr>
	</thead>
	<tbody>
            <?php
            foreach($daftar_user as $user){
			?>

        <tr>
			<td><?php echo $user->nama_lengkap; ?></td>
			<td><?php echo $user->username; ?></td>
			<td><?php echo $user->email; ?></td>
			<td><?php echo $user->alamat; ?></td>
			<td><?php echo '<a href="'.base_url().'index.php/user_controller/delete_user/'.$user->id_user.'" onclick="return confirm(\'Anda yakin akan menghapus '.$user->username.'?\')">Delete</a>'?></td>
		</tr>
           <?php } ?>
	</tbody>
	<tfoot>
		<tr>
			<th>Nama Lengkap</th>
			<th>Username</th>
			<th>Email</th>
			<th>Alamat</th>
			<th>Action</th>
		</tr>
	</tfoot>
	</table>
</body>
</html>

Cobalah untuk menjalankan aplikasi tersebut dengan URL http://localhost/codeigniter/index.php/user_controller/user

Ketika anda klik delete, maka akan muncul peringatan yang jika di OK maka database akan dihapus dari dalam database.

 

delete record menggunakan codeigniter
Delete Record

Source code: delete_record_codeigniter

Selanjutnya, membuat fungsi update di Codeigniter

Semoga bermanfaat.

11 Comments


  1. punya saya sudah bisa jalan sampe update dan simpan, tapi setelah dilihat databasenya, gak bisa nambah, masalahnya itu apa om?

    Reply

  2. makasih untuk panduannya. sangat bermanfaat 🙂
    untuk fungsi pencarian dengan codeigniter bagaimana ya ?
    bisa share info
    makasih

    Reply

    1. terima kasih, sama2
      pencarian yang mudah, tinggal query dari database saja, kalau ada yang sesuai ditampilkan…
      klo mau yg expert bisa pakai library lucene atau solr

      Reply

  3. saya sudah coba script untuk menghapus record, alert nya sudah keluar, tapi di databasenya tidak terhapus ?
    gmana ya mas solusinya?

    Reply

  4. seteleh muncul Data berhasil disimpan…
    apakah bisa ditambahkan sessiont animasi dan langsung ke menu utama
    redirect(‘user_controller/user’);

    kira2 gmna sintaxnya?
    mohon pencerahanya..

    Reply

  5. gan maap nih mau tanya kalau mau nyimpen data base sama table nya di mana yah

    Reply

Leave a Reply

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