Membuat CRUD dengan MySQLi dan PHP
Cara Membuat CRUD (Create, Read, Update, Delete) dengan MySQLi extension di PHP - Mulai PHP versi 7, kini PHP sudah tidak lagi mendukung MySQL extension untuk koneksi ke database. Pengaksesan database kini digantikan dengan MySQLi extension atau PDO. Jadi teman-teman yang suka ngoding agar melakukan migrasi dengan menggunakan MySQLi extension atau PDO.
Untuk kesempatan kali ini saya akan memberikan contoh sederhana CRUD untuk MySQLi extension baik Procedural maupun OOP. Untuk CRUD pada PDO akan segera menyusul.
Untuk contoh dari CRUD MySQLi extension ini, silakan teman-teman membuat sebuah database dan gunakan kueri berikut:
Simpan script koneksi berikut dengan nama koneksi.php.
Berikut script untuk Create untuk MySQLi extension. Simpan dengan nama create.php.
Berikut script untuk Read untuk MySQLi extension. Simpan dengan nama read.php.
Berikut script untuk Update untuk MySQLi extension. Simpan dengan nama update.php.
Berikut script untuk Delete untuk MySQLi extension. Simpan dengan nama delete.php.
Demikian cara membuat CRUD menggunakan MySQLi extension di PHP baik Procedural maupun OOP. Silakan dicoba dan semoga bermanfaat.
Mungkin ini yang kamu cari:
Untuk kesempatan kali ini saya akan memberikan contoh sederhana CRUD untuk MySQLi extension baik Procedural maupun OOP. Untuk CRUD pada PDO akan segera menyusul.
Untuk contoh dari CRUD MySQLi extension ini, silakan teman-teman membuat sebuah database dan gunakan kueri berikut:
CREATE TABLE `petugas` ( `id` int(11) NOT NULL, `nama` varchar(50) NOT NULL, `alamat` text NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; ALTER TABLE `petugas` ADD PRIMARY KEY (`id`); INSERT INTO `petugas` (`id`, `nama`, `alamat`) VALUES (1, 'Yunus', 'Semarang'), (2, 'Lusi', 'Padang'), (3, 'Rani', 'Bandung'), (4, 'Andi', 'Surabaya'), (5, 'Abdul', 'Tangerang');Bila sudah, kita buat file koneksi databasenya. Sebelumnya saya juga sudah pernah membahas tentang cara membuat koneksi database dengan MySQLi extension di PHP. Namun untuk tutorial ini, saya sediakan langsung script koneksinya.
Simpan script koneksi berikut dengan nama koneksi.php.
<?php // Koneksi MySQLi Procedural $db['host'] = "localhost"; //host $db['user'] = "root"; //username database $db['pass'] = "pass"; //password database $db['name'] = "kangsunu_crud"; //nama database $koneksi = mysqli_connect($db['host'], $db['user'], $db['pass'], $db['name']); if (mysqli_connect_errno()) { trigger_error('Koneksi ke database gagal: ' . mysqli_connect_error(), E_USER_ERROR); // Jika koneksi gagal, tampilkan pesan "Koneksi ke database gagal" } ?>
<?php // Koneksi MySQLi OOP $db['host'] = "localhost"; //host $db['user'] = "root"; //username database $db['pass'] = "pass"; //password database $db['name'] = "kangsunu_crud"; //nama database $koneksi = new mysqli($db['host'], $db['user'], $db['pass'], $db['name']); if($koneksi->connect_error){ trigger_error('Koneksi ke database gagal: ' . $mysqli->connect_error, E_USER_ERROR); // Jika koneksi gagal, tampilkan pesan "Koneksi ke database gagal" } ?>
Berikut script untuk Create untuk MySQLi extension. Simpan dengan nama create.php.
<?php // Create MySQLi Procedural include 'koneksi.php'; $sql = "INSERT INTO petugas (id, nama, alamat) VALUES (null, 'Sunu', 'Yogya')"; if (mysqli_query($koneksi, $sql)) { echo "Data berhasil ditambahkan!"; } else { echo "Error: ".$sql.". ".mysqli_error($koneksi); } ?>
<?php // Create MySQLi OOP include 'koneksi.php'; $sql = "INSERT INTO petugas (id, nama, alamat) VALUES (null, 'Sunu', 'Yogya')"; if ($koneksi->query($sql) === TRUE) { echo "New record created successfully"; } else { echo "Error: ".$sql.". ". $koneksi->error; } ?>
Berikut script untuk Read untuk MySQLi extension. Simpan dengan nama read.php.
<?php // Read MySQLi Procedural include 'koneksi.php'; $sql = "SELECT id, nama, alamat FROM petugas"; if (!$result = mysqli_query($koneksi, $sql)) { die('Error: '.mysqli_error($koneksi)); } else{ if (mysqli_num_rows($result) > 0) { // output data dari tiap baris while($row = mysqli_fetch_assoc($result)) { echo "id: " . $row['id']. " - Nama: " . $row['nama']. " " . $row['alamat']. "\n<br>"; } } else { echo "Hasil 0"; } } ?>
<?php // Read MySQLI OOP include 'koneksi.php'; $sql = "SELECT id, nama, alamat FROM petugas"; if (!$result = $koneksi->query($sql)){ die('Error: ' . $koneksi->error); } else{ if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "id: " . $row['id']. " - Nama: " . $row['nama']. " " . $row['alamat']. "\n<br>"; } } else { echo "Hasil 0"; } } ?>
Berikut script untuk Update untuk MySQLi extension. Simpan dengan nama update.php.
<?php // Update MysSQLi Procedural include 'koneksi.php'; $sql = "UPDATE petugas SET nama='Aziz' WHERE id=1"; if (mysqli_query($koneksi, $sql)) { echo "Data berhasil diperbaharui."; } else { echo "Error memperbaharui data: " . mysqli_error($koneksi); } ?>
<?php // Update MySQLi OOP include 'koneksi.php'; $sql = "UPDATE petugas SET nama='Aziz' WHERE id=1"; if ($koneksi->query($sql) === TRUE) { echo "Data berhasil diperbaharui."; } else { echo "Error memperbaharui data: " . $koneksi->error; } ?>
Berikut script untuk Delete untuk MySQLi extension. Simpan dengan nama delete.php.
<?php // Delete MySQLi Procedural include 'koneksi.php'; $sql = "DELETE FROM petugas WHERE id=2"; if (mysqli_query($koneksi, $sql)) { echo "Data berhasil dihapus."; } else { echo "Gagal menghapus data: " . mysqli_error($koneksi); } ?>
<?php // Delete MySQLi OOP include 'koneksi.php'; $sql = "DELETE FROM petugas WHERE id=2"; if ($koneksi->query($sql) === TRUE) { echo "Data berhasil dihapus."; } else { echo "Error deleting record: " . $koneksi->error; }?>
Demikian cara membuat CRUD menggunakan MySQLi extension di PHP baik Procedural maupun OOP. Silakan dicoba dan semoga bermanfaat.
Mungkin ini yang kamu cari:
Terimakasih Kang Sunu..
Tutorial anda sangat bermanfaat
By. Ksatria Pengelana
terimakasih mas, semoga bermanfaat juga untuk yang lainnya yang sedang berkunjung :)
terima kasih, tutorialnya sangat bermanfaat kang. kalau dilengkapi dengan screenshot akan lebih bagus.
terimakasih untuk sarannya mas, mungkin kedepannya bisa diterapkan. :)
terima kasih, sangat bermanfaat ...
visit me :
https://hafizhcodings.blogspot.co.id/
mohon bantuannya kang untuk peringatan itu > Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\gps\login.php on line 12
VALUES (null, 'Sunu', 'Yogya')" saya rubah jadi
VALUES (7, 'Sunu', 'Yogya')"
bisa mas, asal ID 7 belum terpakai. value ID dibuat menjadi null karena sudah auto increment. jadi ID akan dibuat secara otomatis oleh Database.