PHP merupakan salah satu bahasa pemrograman yang paling populer di dunia. Salah satu fitur yang sangat berguna dalam pengembangan web adalah CRUD (Create, Read, Update, Delete). Dalam tutorial ini, kita akan belajar bagaimana cara membuat CRUD pada PHP OOP dan MySQLi.
Persiapan
Sebelum memulai tutorial ini, pastikan Anda telah mempersiapkan beberapa hal berikut:
- Web server (contoh: XAMPP, WAMP, atau MAMP)
- Text editor (contoh: Sublime Text, Visual Studio Code, atau Notepad++)
- Pengetahuan dasar tentang PHP OOP dan MySQLi
Membuat Database
Pertama-tama, mari kita buat database untuk menyimpan data yang akan kita tambahkan, ubah, dan hapus nanti. Gunakan perintah SQL berikut untuk membuat database:
CREATE DATABASE crud;
Setelah database berhasil dibuat, buat tabel dengan perintah SQL berikut:
CREATE TABLE users (id INT(11) NOT NULL AUTO_INCREMENT,nama VARCHAR(50) NOT NULL,email VARCHAR(50) NOT NULL,password VARCHAR(50) NOT NULL,PRIMARY KEY (id));
Dalam tabel ini, kita akan menyimpan data pengguna seperti nama, email, dan password.
Membuat Koneksi ke Database
Setelah database dan tabel berhasil dibuat, mari kita membuat koneksi ke database menggunakan PHP. Buat file dengan nama koneksi.php dan masukkan kode berikut:
<?php$host = "localhost";$username = "root";$password = "";$database = "crud";$conn = new mysqli($host, $username, $password, $database);if ($conn->connect_error) {die("Koneksi gagal: " . $conn->connect_error);}?>
Dalam kode di atas, kita menggunakan mysqli untuk membuat koneksi ke database dan mengecek apakah koneksi berhasil atau tidak.
Membuat Fungsi Read
Setelah koneksi berhasil dibuat, mari kita mulai membuat fungsi CRUD pertama, yaitu Read. Fungsi ini akan digunakan untuk menampilkan semua data pengguna yang ada dalam tabel.
Buat file dengan nama read.php dan masukkan kode berikut:
<?phprequire_once "koneksi.php";$sql = "SELECT * FROM users";$result = $conn->query($sql);if ($result->num_rows > 0) {while ($row = $result->fetch_assoc()) {$id = $row["id"];$nama = $row["nama"];$email = $row["email"];$password = $row["password"];echo "<tr><td>$id</td><td>$nama</td><td>$email</td><td>$password</td></tr>";}} else {echo "<tr><td colspan='4'>Belum ada data</td></tr>";}$conn->close();?>
Dalam kode di atas, kita menggunakan perintah SQL SELECT untuk mengambil semua data pengguna dari tabel dan menampilkan hasilnya menggunakan perulangan while.
Membuat Fungsi Create
Selanjutnya, kita akan membuat fungsi CRUD kedua, yaitu Create. Fungsi ini akan digunakan untuk menambahkan data pengguna baru ke dalam tabel.
Buat file dengan nama create.php dan masukkan kode berikut:
<?phprequire_once "koneksi.php";if ($_SERVER["REQUEST_METHOD"] == "POST") {$nama = $_POST["nama"];$email = $_POST["email"];$password = $_POST["password"];$sql = "INSERT INTO users (nama, email, password) VALUES ('$nama', '$email', '$password')";if ($conn->query($sql) === TRUE) {header("location: index.php");} else {echo "Error: " . $sql . "<br>" . $conn->error;}$conn->close();}?>
Dalam kode di atas, kita menggunakan perintah SQL INSERT untuk menambahkan data pengguna baru ke dalam tabel.
Membuat Fungsi Update
Selanjutnya, kita akan membuat fungsi CRUD ketiga, yaitu Update. Fungsi ini akan digunakan untuk mengubah data pengguna yang sudah ada dalam tabel.
Buat file dengan nama update.php dan masukkan kode berikut:
<?phprequire_once "koneksi.php";if ($_SERVER["REQUEST_METHOD"] == "POST") {$id = $_POST["id"];$nama = $_POST["nama"];$email = $_POST["email"];$password = $_POST["password"];$sql = "UPDATE users SET nama='$nama', email='$email', password='$password' WHERE id=$id";if ($conn->query($sql) === TRUE) {header("location: index.php");} else {echo "Error: " . $sql . "<br>" . $conn->error;}$conn->close();}?>
Dalam kode di atas, kita menggunakan perintah SQL UPDATE untuk mengubah data pengguna yang sudah ada dalam tabel.
Membuat Fungsi Delete
Terakhir, kita akan membuat fungsi CRUD keempat, yaitu Delete. Fungsi ini akan digunakan untuk menghapus data pengguna yang sudah ada dalam tabel.
Buat file dengan nama delete.php dan masukkan kode berikut:
<?phprequire_once "koneksi.php";if ($_SERVER["REQUEST_METHOD"] == "GET") {$id = $_GET["id"];$sql = "DELETE FROM users WHERE id=$id";if ($conn->query($sql) === TRUE) {header("location: index.php");} else {echo "Error: " . $sql . "<br>" . $conn->error;}$conn->close();}?>
Dalam kode di atas, kita menggunakan perintah SQL DELETE untuk menghapus data pengguna yang sudah ada dalam tabel.
Menampilkan Data pada Halaman Utama
Setelah semua fungsi CRUD berhasil dibuat, mari kita tampilkan data pengguna pada halaman utama. Buat file dengan nama index.php dan masukkan kode berikut:
<?phprequire_once "koneksi.php";?><!DOCTYPE html><html lang="id"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>CRUD PHP OOP dan MySQLi</title></head><body><h1>CRUD PHP OOP dan MySQLi</h1><h2>Tambah Data</h2><form action="create.php" method="post"><label for="nama">Nama:</label><input type="text" name="nama" id="nama" required><br><br><label for="email">Email:</label><input type="email" name="email" id="email" required><br><br><label for="password">Password:</label><input type="password" name="password" id="password" required><br><br><input type="submit" value="Tambah"></form><h2>Data Pengguna</h2><table border="1"><tr><th>ID</th><th>Nama</th><th>Email</th><th>Password</th><th>Aksi</th></tr><?php include "read.php"; ?></table><h2>Ubah Data</h2><form action="update.php" method="post"><input type="hidden" name="id" id="id" required><label for="nama">Nama:</label><input type="text" name="nama" id="nama" required><br><br><label for="email">Email:</label><input type="email" name="email" id="email" required><br><br><label for="password">Password:</label><input type="password" name="password" id="password" required><br><br><input type="submit" value="Ubah"></form><script>function ubah(id, nama, email, password) {document.getElementById("id").value = id;document.getElementById("nama").value = nama;document.getElementById("email").value = email;document.getElementById("password").value = password;}</script><h2>Hapus Data</h2><form action="delete.php" method="get"><label for="id">ID:</label><input type="text" name="id" id="id" required><br><br><input type="submit" value="Hapus"></form></body></html>
Dalam kode di atas, kita menggunakan perintah PHP include untuk menampilkan data pengguna dari file read.php. Selain itu, kita juga menggunakan JavaScript untuk mengisi formulir ubah ketika tombol ubah di klik.
Kesimpulan
Dalam tutorial ini, kita telah belajar bagaimana cara membuat CRUD pada PHP OOP dan MySQLi. Dengan menggunakan CRUD, kita dapat menambahkan, mengubah, dan menghapus data pada database dengan mudah dan cepat. Sekarang, cobalah untuk mengembangkan aplikasi web Anda sendiri menggunakan teknik ini. Selamat mencoba!