Setelah mengikuti semua tutorial sebelumnya yaitu menampilkan, menginput dan mengubah data menggunakan MySQLi dan PHP. Berikut ialah tutorial menghapus data dengan MySQLi dan PHP. Untuk itu ikuti panduan berikut : Daftar Isi Langkah 1Kembali ke file <table> <tbody> <tr> <th>Judul Buku</th> <th>Nama Pengarang</th> <th>Ubah Data</th> <th>Hapus Data</th> </tr> <?php $sql= "SELECT id_buku, judul, pengarang FROM buku ORDER BY judul ASC"; $hasil = $mysqli->query($sql); if($hasil === false) { trigger_error('Perintah SQL salah: ' . $sql . ' Error: ' . $mysqli->error, E_USER_ERROR); } else { while($data = $hasil->fetch_array()){ echo "<tr>"; echo "<td>$data[judul]</td>"; echo "<td>$data[pengarang]</td>"; echo "<td><a href=ubah.php?id_buku=$data[id_buku]>Ubah</a></td>"; // Menciptakan data id_buku yang mengarah ke file ubah.php echo "<td><a href=tampil.php?hapus=$data[id_buku]>Hapus</a></td>"; echo "</tr>"; } } ?> </tbody> </table> Langkah 2Selanjutnya, kita akan menambahkan kode untuk mengahapus data menggunakan MySQLi dan PHP. Kode hapus akan kita tuliskan di bagian atas pada file if(isset($_GET['hapus'])){ $id_buku = $_GET['hapus']; if(!empty($id_buku)){ $sql="DELETE FROM buku WHERE id_buku='$id_buku'"; if($mysqli->query($sql) === false) { // Jika gagal meng-hapus data tampilkan pesan dibawah 'Perintah SQL Salah' trigger_error('Perintah SQL Salah: ' . $sql . ' Error: ' . $mysqli->error, E_USER_ERROR); } else { // Jika berhasil alihkan ke halaman tampil.php header('location: tampil.php'); } } } Nantinya kode pada file <?php include('config.php'); if(isset($_GET['hapus'])){ $id_buku = $_GET['hapus']; if(!empty($id_buku)){ $sql="DELETE FROM buku WHERE id_buku='$id_buku'"; if($mysqli->query($sql) === false) { // Jika gagal meng-hapus data tampilkan pesan dibawah 'Perintah SQL Salah' trigger_error('Perintah SQL Salah: ' . $sql . ' Error: ' . $mysqli->error, E_USER_ERROR); } else { // Jika berhasil alihkan ke halaman tampil.php header('location: tampil.php'); } } } ?> <!DOCTYPE html> <html> <head> <title>Menampilkan Data dengan MySQLi</title> <style> table { margin: 0 auto; border-collapse: collapse; } tbody { color: #000; } table th, table td { padding: 5px 10px; border: 1px solid #000000; } table th { background: #CCC; font: bold 14px Arial, Helvetica, sans-serif; color:#333; } table tr { font: normal 14px Tahoma, Geneva, sans-serif; } </style> </head> <body> <table> <tbody> <tr> <th>Judul Buku</th> <th>Nama Pengarang</th> <th>Ubah Data</th> <th>Hapus Data</th> </tr> <?php $sql= "SELECT id_buku, judul, pengarang FROM buku ORDER BY judul ASC"; $hasil = $mysqli->query($sql); if($hasil === false) { trigger_error('Perintah SQL salah: ' . $sql . ' Error: ' . $mysqli->error, E_USER_ERROR); } else { while($data = $hasil->fetch_array()){ echo "<tr>"; echo "<td>$data[judul]</td>"; echo "<td>$data[pengarang]</td>"; echo "<td><a href=ubah.php?id_buku=$data[id_buku]>Ubah</a></td>"; // Menciptakan data id_buku yang mengarah ke file ubah.php echo "<td><a href=tampil.php?hapus=$data[id_buku]>Hapus</a></td>"; echo "</tr>"; } } ?> </tbody> </table> </body> </html> Sampai pada bagian ini, fitur hapus data sudah dapat berjalan dengan baik. Silakan coba terlebih dahulu pada kode yang Anda tuliskan. Untuk memudahkan proses belajar silakan download source code diatas pada link berikut ini. Download Tutorial menghapus ini ialah artikel terakhir untuk serial tutorial MySQLi dan PHP (CRUD). Agar kemampuan coding Anda semakin terasah silakan perbanyak studi kasus dalam membuat aplikasi. Langkah pertama untuk latihan edit, update & hapus data mysql PHP adalah tampilakan data terlebih dahulu baru di kasih menu (opsi) untuk edit / hapus. Buta database baru: belalar-php.sql CREATE TABLE `data_siswa` ( `id` int(12) NOT NULL, `nama` varchar(25) NOT NULL, `alamat` varchar(200) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; INSERT INTO `data_siswa` (`id`, `nama`, `alamat`) VALUES (7, 'CV. ABC', 'Jakarta'), (8, 'Andreas', 'Bandung'); ALTER TABLE `data_siswa` ADD PRIMARY KEY (`id`); ALTER TABLE `data_siswa` MODIFY `id` int(12) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9; COMMIT; Selanjutnya… Daftar ISI Konekasi database mysql PHPBuat folder: xampp > htdocs > latihan-php> koneksi.php <?php // data akun database + nama database (password kosong) $koneksi=mysqli_connect("localhost","root","","belajar_php"); if (mysqli_connect_errno()){ // cek kondisi jika koneksi berhasil echo "Koneksi database gagal : " . mysqli_connect_error();}?> Membuat tabel view datafile baru: xampp > htdocs > belajar-php > tampil_data.php <!DOCTYPE html> <html> <head> <title>Tampil data siswa (tabel)</title> </head> <body style="padding:15px;"> <h4> Tampil data siswa:</h4> Menu: <a href="tampil_data.php"> Tampil data </a> . <a href="input_data.php"> Tambah data </a><br><br> <?php session_start(); // session untuk notifikasi pesan echo @$_SESSION['pesan']; session_destroy(); ?> <table border="1"> <tr><th align="center">ID</th> <td width="85" align="center">Nama</td> <td width="155" align="center">Alamat</td> <td width="85" align="center">Opsi</td> </tr> <?php include"koneksi.php"; $data = mysqli_query($koneksi,"select * from data_siswa order by id desc"); while($d = mysqli_fetch_array($data)){?> <tr> <td><?php echo $d['id'];?></td> <td><?php echo $d['nama'];?></td> <td><?php echo $d['alamat'];?></td> <td><a href="edit_data.php?id=<?php echo $d['id']; ?>">Edit</a> / <a href="javascript:del(<?php echo $d['id'];?>)">Hapus</a></td> </tr> <?php }; ?> </table> <script language="JavaScript" type="text/javascript"> function del(id){ if (confirm("yakin akan menghapus data ini?")){ window.location.href = 'hapus_data.php?id=' + id; }} </script> </body> </html> Note:
Hasil tampilan data + OptionEdit data Mysql PHPSistem kerja edit & update data pada data PHP mysql menggunakan bantuan ID sebagai index hapus, terus membuat form edit untuk tampilkan data yang akan di update berdasarkan ID yang di pilih. Langkah pertama tambahkan kode opsi untuk link edit, mengambil data ID, dibawa ke URL: <a href="edit_data.php?id=<?php echo $d['id']; ?>">Edit</a> note: kode diatas sudah ada pada kode tampil data. Form edit dataMembuat file form baru untuk edit data: belajar-php > edit_data.php <!DOCTYPE html> <html> <head> <title>Input data siswa</title> </head> <body style="padding:15px;background:#ddd"> <h4> Form edit data siswa:</h4> <?php include 'koneksi.php'; $id = @$_GET['id']; // ambil data ID dari URL $data = mysqli_query($koneksi,"select * from data_siswa where id='$id'"); $d = mysqli_fetch_array($data);?> <form action="update_data.php?id=<?php echo $id ?>" method="post"> ID: <?php echo $d['id']; ?><br><hr> <input style="margin-bottom:10px;" type="text" name="nama" value="<?php echo $d['nama']; ?>"><br> <input style="margin-bottom:10px;" type="text" name="alamat" value="<?php echo $d['alamat']; ?>"><br> <button type="submit">Update</button> </form> </body> </html> Note: jangan lupa pada kode <form> harus ada url action=update_data.php?id=<?php echo $id ?> untuk membawa ID dalam proses Update, karena setelah data di edit akan langsung di proses untuk UPDATE. Pada form edit akan menampilkan data: nama / alamat berdasarkan ID yang di pilih sehingga bisa di edit -> update. Hasil views edit dataBuka klik “edit” pada tabel data.Update data PHP MysqlBuat kode untuk proses Update file: belajar-php > update_data.php <?php session_start(); include"koneksi.php"; // masukan konekasi DB // ambil variable data $nama=$_POST['nama']; $alamat=$_POST['alamat']; $id = @$_GET['id']; // ambil data ID di URL //Proses query update $update=mysqli_query($koneksi,"update data_siswa set nama='$nama', alamat='$alamat' where id='$id'"); if($update){ // pesan dengan sistem session $_SESSION['pesan'] = '<font color=green>OK, 1 data berhasil diupdate.</font>'; header("location:tampil_data.php"); // kembali ke halaman tampil }else{ echo "Gagal update data!"; } ?> Note: kode update hanya untuk proses + ada pesan yang ditampilkan setelah proses update selesai. setelah itu akan dibawa kembali ke halaman: tampil_data.php Tampilan data berhasil updateHapus / delete data Mysql PHPProses hapus data PHP mysql cukup mudah, buat link (tombol) hapus berdasarkan ID yang dipilih selanjutnya di proses menuju query hapus + konfirmasi javascripst sebelum hapus, sehingga tidak ada salah pencet data hilang. Kode hapus: <a href="javascript:del(<?php echo $d['id'];?>)">Hapus</a> Note: sudah ada di kode tampil data diatas + kode javascipst untuk konfirmasi sebelum data dihapus: <script language="JavaScript" type="text/javascript"> function del(id){ if (confirm("yakin akan menghapus data ini?")){ window.location.href = 'hapus_data.php?id=' + id; }} </script> Info: kode javascipts ditaruh dipaling bawah sebelum kode </body>. Proses hapus dataBuat file baru: belajar-php > hapus_data.php <?php Note: setalah data berhasil dihapus sistem akan tampilkan pesan notifikasi dengan session & kembali ke halaman tampil data. Hasil view hapusOk, selsai. Download file latihan CRUD PHP Mysql sederhanaMateri lengkap sederhana yang bisa didownload secara gratis untuk mudahkan proses belajar PHP / Mysql, beserta database dalam format zip: tambah data, edit data, tampil data & hapus data. |