Didalam kasus tertentu kita mungkin metode kita membutuhkan sebuah kemampuan seperti melakukan multiple update atau delete, tujuannya tentu saja untuk mempermudah pengguna itu sendiri, alasannya jikalau hanya bisa dijalankan satu persatu pastinya dalam case tertentu, hal tersebut akan sangat merepotkan.
Tutorial PHP Membuat Multiple Delete dengan Checkbox
Kode ditulis dengan gaya php procedural style
Pertama buat dulu sebuah database dengan tabel yang telah terisi data supaya lebih mudah untuk mencontohkannya, atau bisa hukuman query berikut untuk membuat data baru di database MySQL
Kode query
-- phpMyAdmin SQL Dump -- version 4.5.1 -- http://www.phpmyadmin.net -- -- Host: 127.0.0.1 -- Generation Time: 27 Sep 2020 pada 03.55 -- Versi Server: 10.1.13-MariaDB -- PHP Version: 5.6.20 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Database: `codexam` -- -- -------------------------------------------------------- -- -- Struktur dari tabel `tabel1` -- CREATE TABLE `tabel1` ( `id` int(2) NOT NULL, `nama_karyawan` varchar(35) NOT NULL, `nip` varchar(10) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -- Dumping data untuk tabel `tabel1` -- INSERT INTO `tabel1` (`id`, `nama_karyawan`, `nip`) VALUES (1, 'Ahmad Z', '20200801'), (2, 'Denada Afsari', '20200802'); -- -- Indexes for dumped tables -- -- -- Indexes for table `tabel1` -- ALTER TABLE `tabel1` ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `nip` (`nip`); -- -- AUTO_INCREMENT for dumped tables -- -- -- AUTO_INCREMENT for table `tabel1` -- ALTER TABLE `tabel1` MODIFY `id` int(2) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Selanjutnya buat sebuah koneksi ke database
File koneksi.php
connect_error()); endif; ?>
Membuat Fungsi untuk melaksanakan operasi memperlihatkan dan mendelete data. Menurut saya operasi ke databasenya lebih disarankan dipisahkan atau dibuat didalam fungsi, semoga lebih gampang dalam pemeriksaan instruksi bila misal terjadi error.
File fungsi.php
connect_error()); return $perintah; function deleteMultiTb1($data) global $koneksi; $sql = "DELETE FROM tabel1 WHERE nip IN ($data)"; $perintah = mysqli_query($koneksi, $sql); # Bentuk querynya nanti WHERE nip in (123,12657, dst) # Untuk memastikan cek atau jalankan query di database if($perintah): return true; else: return false; endif;
Baca :
Menampilkan antar wajah delete
File index.php
"; # Mengubah atau menyatukan elemen array dengan tanda pemisah koma $im = implode(",", $nip); echo $im; */ if(empty($_POST['nip'])) $nip_err = "Pilih salah satu data untuk dihapus"; else $nip = $_POST['nip']; $nip = implode(",", $nip); if(empty($nip_err)) //jika sudah tidak ada error, langsung jalankan if(deleteMultiTb1($nip)): echo "Berhasil hapus"; else: echo "Gagal hapus"; //echo var_dump($koneksi); endif; ?> Multiple Delete PHP
Sumber https://root93.blogspot.com
EmoticonEmoticon