Lompat ke konten Lompat ke sidebar Lompat ke footer

PHP : Membuat CRUD dengan PHP + MySQL/MariaDB

CRUD (Create, Read, Update, Delete) merupakan empat fungsi dasar dalam pengelolaan data pada aplikasi berbasis web.
Pada kesempatan kali ini kita akan membuat CRUD dengan menggunakan PHP dan MySQL/MariaDB, mulai dari menambahkan, menampilkan, mengubah, hingga menghapus data secara sederhana dan mudah dipahami.

Membuat Desain Database

Kolom Tipe Keterangan
id_siswa INT(11) AUTO_INCREMENT Primary key
nis VARCHAR(20)
nama_siswa VARCHAR(100)
jenis_kelamin ENUM('L','P')

Struktur Folder

C:/xampp/htdocs/crud/
│
├─ koneksi.php
├─ index.php
├─ tambah.php
├─ edit.php
└─ hapus.php

Membuat File PHP

Berikut adalah isi dari file koneksi.php


<?php
$host = "localhost";
$user = "root";
$pass = "";
$db   = "sekolah";

$koneksi = mysqli_connect($host, $user, $pass, $db);

if (!$koneksi) {
  die("Koneksi gagal: " . mysqli_connect_error());
}
?>

Berikut adalah isi dari file index.php


<?php include "koneksi.php"; ?>
<!DOCTYPE html>
<html lang="id">
<head>
  <meta charset="UTF-8">
  <title>Data Siswa</title>
  <style>
    table { border-collapse: collapse; width: 100%; }
    th, td { border: 1px solid #ddd; padding: 8px; }
    th { background-color: #f2f2f2; }
    a { text-decoration: none; }
  </style>
</head>
<body>

<h2>Data Siswa</h2>
<a href="tambah.php">+ Tambah Siswa</a>
<br><br>

<table>
  <tr>
    <th>No</th>
    <th>NIS</th>
    <th>Nama Siswa</th>
    <th>Jenis Kelamin</th>
    <th>Aksi</th>
  </tr>

  <?php
  $no = 1;
  $data = mysqli_query($koneksi, "SELECT * FROM siswa ORDER BY id_siswa DESC");
  while ($row = mysqli_fetch_assoc($data)) {
  ?>
  <tr>
    <td><?= $no++; ?></td>
    <td><?= $row['nis']; ?></td>
    <td><?= $row['nama_siswa']; ?></td>
    <td><?= $row['jenis_kelamin']; ?></td>
    <td>
      <a href="edit.php?id=<?= $row['id_siswa']; ?>">Edit</a> |
      <a href="hapus.php?id=<?= $row['id_siswa']; ?>" onclick="return confirm('Hapus data ini?');">Hapus</a>
    </td>
  </tr>
  <?php } ?>
</table>

</body>
</html>

Berikut adalah isi dari file tambah.php

<?php include "koneksi.php"; ?>

<!DOCTYPE html>
<html lang="id">
<head>
  <meta charset="UTF-8">
  <title>Tambah Siswa</title>
</head>
<body>

<h2>Tambah Siswa</h2>
<form action="" method="post">
  <label>NIS:</label><br>
  <input type="text" name="nis" required><br><br>

  <label>Nama Siswa:</label><br>
  <input type="text" name="nama_siswa" required><br><br>

  <label>Jenis Kelamin:</label><br>
  <select name="jenis_kelamin" required>
    <option value="">--Pilih--</option>
    <option value="L">L</option>
    <option value="P">P</option>
  </select><br><br>

  <button type="submit" name="simpan">Simpan</button>
</form>

<?php
if (isset($_POST['simpan'])) {
  $nis				= $_POST['nis'];
  $nama_siswa	    = $_POST['nama_siswa'];
  $jenis_kelamin	= $_POST['jenis_kelamin'];

  $query = mysqli_query($koneksi, "INSERT INTO siswa (nis, nama_siswa, jenis_kelamin) VALUES ('$nis', '$nama_siswa', '$jenis_kelamin')");

  if ($query) {
    echo "<script>alert('Data berhasil disimpan');window.location='index.php';</script>";
  } else {
    echo "<script>alert('Gagal menyimpan data');</script>";
  }
}
?>

</body>
</html>

Berikut adalah isi dari file edit.php


<?php
include "koneksi.php";
$id_siswa = $_GET['id_siswa'];
$data = mysqli_query($koneksi, "SELECT * FROM siswa WHERE id_siswa='$id'");
$row = mysqli_fetch_assoc($data);
?>

<!DOCTYPE html>
<html lang="id">
<head>
  <meta charset="UTF-8">
  <title>Edit Siswa</title>
</head>
<body>

<h2>Edit Siswa</h2>
<form action="" method="post">
  <label>NIS:</label><br>
  <input type="text" name="nis" value="<?= $row['nis']; ?>" required><br><br>

  <label>Nama Siswa:</label><br>
  <input type="text" name="nama_siswa" value="<?= $row['nama_siswa']; ?>" required><br><br>

  <label>Jenis Kelamin:</label><br>
  <select name="jenis_kelamin" required>
    <option value="L" <?= $row['jenis_kelamin']=='L'?'selected':''; ?>>L</option>
    <option value="P" <?= $row['jenis_kelamin']=='P'?'selected':''; ?>>P</option>
  </select><br><br>

  <button type="submit" name="update">Update</button>
</form>

<?php
if (isset($_POST['update'])) {
  $nis   			= $_POST['nis'];
  $nama_siswa  		= $_POST['nama_siswa'];
  $jenis_kelamin	= $_POST['jenis_kelamin'];

  $query = mysqli_query($koneksi, "UPDATE siswa SET nis='$nis', nama_siswa='$nama_siswa', jenis_kelamin='$jenis_kelamin' WHERE id_siswa='$id_siswa'");

  if ($query) {
    echo "<script>alert('Data berhasil diupdate');window.location='index.php';</script>";
  } else {
    echo "<script>alert('Gagal update data');</script>";
  }
}
?>

</body>
</html>

Berikut adalah isi dari file hapus.php


<?php
include "koneksi.php";
$id_siswa = $_GET['id_siswa'];

$query = mysqli_query($koneksi, "DELETE FROM siswa WHERE id_siswa='$id_siswa'");

if ($query) {
  echo "<script>alert('Data berhasil dihapus');window.location='index.php';</script>";
} else {
  echo "<script>alert('Gagal menghapus data');window.location='index.php';</script>";
}
?>

Menjalankan Aplikasi

Setelah semua file sudah dibuat, langkah selanjutnya adalah menjalankan aplikasi untuk memastikan sistem berfungsi dengan baik. Pada tahap ini, kita akan mencoba memasukkan beberapa nama siswa ke dalam aplikasi yang sudah kita buat.

NIS Nama Siswa Jenis Kelamin
202501 Budi Santoso L
202502 Siti Aminah P
202503 Ahmad Fauzi L
202504 Rina Putri P
202505 Dedi Saputra L
202506 Nita Wulandari P
202507 Fajar Ramadhan L
202508 Maya Sari P
202509 Andi Prasetyo L
202510 Lilis Handayani P

Posting Komentar untuk "PHP : Membuat CRUD dengan PHP + MySQL/MariaDB"