DISKON TERBATAS! Masukkan kupon "skillbaru" saat checkout di kelas apa saja
Skodev
Belajar coding dalam bahasa Indonesia
Membuat aplikasi web yang dapat mengelola data (Create, Read, Update, Delete - CRUD) adalah keterampilan dasar yang dibutuhkan oleh pengembang web. PHP dan MySQL adalah kombinasi populer untuk membangun aplikasi web berbasis server. Di sini, kami akan memandu kamu membuat sistem CRUD sederhana menggunakan PHP dan MySQL.
Sebelum mulai, pastikan kamu sudah memiliki server lokal atau hosting untuk menjalankan PHP dan MySQL, serta akses ke phpMyAdmin atau antarmuka database lain untuk mengelola basis data MySQL.
Mari kita mulai dengan persiapan database.
Buka phpMyAdmin dan buat database baru dengan nama db_crud
.
Dalam database db_crud
, buat tabel baru dengan nama users
dan definisikan beberapa kolom seperti berikut:
id INT(11) AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL,
password VARCHAR(100) NOT NULL
Untuk berinteraksi dengan MySQL, kita perlu membuat script koneksi database.
Buat file baru bernama koneksi.php
dan tambahkan kode berikut:
<?php
$host = "localhost";
$user = "root";
$pass = "";
$db_name = "db_crud";
$conn = mysqli_connect($host, $user, $pass, $db_name);
if (!$conn) {
die("Koneksi gagal: " . mysqli_connect_error());
}
?>
Buat file create.php
untuk form input data.
<?php include 'koneksi.php'; ?>
<h2>Tambah User</h2>
<form action="proses_create.php" method="post">
Nama: <input type="text" name="nama">
Email: <input type="text" name="email">
Password: <input type="password" name="password">
<input type="submit" name="submit" value="Tambah">
</form>
Buat file proses_create.php
untuk memproses form.
<?php
include 'koneksi.php';
if(isset($_POST['submit'])) {
$nama = $_POST['nama'];
$email = $_POST['email'];
$password = $_POST['password'];
$query = "INSERT INTO users (nama, email, password) VALUES ('$nama', '$email', '$password')";
$result = mysqli_query($conn, $query);
if($result){
header('Location: index.php');
} else {
echo "Gagal menambah data: " . mysqli_error($conn);
}
}
?>
Dalam file index.php
, kita akan menampilkan data yang ada di database.
<?php
include 'koneksi.php';
$query = "SELECT * FROM users";
$result = mysqli_query($conn, $query);
?>
<h2>Daftar User</h2>
<table>
<tr>
<th>ID</th>
<th>Nama</th>
<th>Email</th>
<th>Aksi</th>
</tr>
<?php while($row = mysqli_fetch_assoc($result)): ?>
<tr>
<td><?= $row['id']; ?></td>
<td><?= $row['nama']; ?></td>
<td><?= $row['email']; ?></td>
<td>
<a href="update.php?id=<?= $row['id']; ?>">Edit</a>
<a href="delete.php?id=<?= $row['id']; ?>">Hapus</a>
</td>
</tr>
<?php endwhile; ?>
</table>
Buat file update.php
dengan form yang diisi secara otomatis berdasarkan data yang akan diedit.
<?php
include 'koneksi.php';
$id = $_GET['id'];
$query = "SELECT * FROM users WHERE id = $id";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
?>
<h2>Edit User</h2>
<form action="proses_update.php" method="post">
<input type="hidden" name="id" value="<?= $row['id']; ?>">
Nama: <input type="text" name="nama" value="<?= $row['nama']; ?>">
Email: <input type="text" name="email" value="<?= $row['email']; ?>">
Password: <input type="password" name="password">
<input type="submit" name="submit" value="Update">
</form>
Di proses_update.php
, kita akan memproses perbaruan data.
<?php
include 'koneksi.php';
if(isset($_POST['submit'])) {
$id = $_POST['id'];
$nama = $_POST['nama'];
$email = $_POST['email'];
$password = $_POST['password'];
$query = "UPDATE users SET nama='$nama', email='$email', password='$password' WHERE id='$id'";
$result = mysqli_query($conn, $query);
if($result){
header('Location: index.php');
} else {
echo "Gagal update data: " . mysqli_error($conn);
}
}
?>
Buat file delete.php
untuk menghapus data berdasarkan ID.
<?php
include 'koneksi.php';
$id = $_GET['id'];
$query = "DELETE FROM users WHERE id = $id";
$result = mysqli_query($conn, $query);
if($result) {
header('Location: index.php');
} else {
echo "Gagal menghapus data: " . mysqli_error($conn);
}
?>
Dengan mengikuti langkah-langkah di atas, kamu akan memiliki sistem CRUD dasar dengan PHP dan MySQL. Kamu bisa melanjutkan untuk menambahkan lebih banyak fitur dan memperbaiki tampilan sesuai kebutuhan.
Link terkait: