Tutorial CRUD dengan PHP dan MySQL: Panduan Lengkap untuk Pemula

Table of Contents

Hallo sobat baru nyekrip! Jika Anda sedang mencari cara untuk membuat aplikasi web yang dapat melakukan operasi Create, Read, Update, dan Delete (CRUD) menggunakan PHP dan MySQL, Anda berada di tempat yang tepat. Artikel ini akan memberikan panduan lengkap langkah demi langkah untuk membuat sistem CRUD yang sederhana namun fungsional. Tanpa basa-basi lagi, mari kita mulai!

Apa Itu CRUD?

Sebelum kita masuk ke dalam tutorial, penting untuk memahami apa itu CRUD. CRUD adalah singkatan dari Create, Read, Update, dan Delete. Ini adalah empat operasi dasar yang biasanya dilakukan dalam pengelolaan data di aplikasi berbasis database. Berikut adalah penjelasan singkat dari setiap operasi:

  • Create: Menambahkan data baru ke database.
  • Read: Mengambil atau menampilkan data dari database.
  • Update: Memperbarui data yang sudah ada di database.
  • Delete: Menghapus data dari database.

Dengan memahami konsep CRUD, Anda dapat membangun aplikasi yang dapat mengelola data dengan efisien dan efektif.

Persiapan Lingkungan Pengembangan

Sebelum kita memulai, pastikan Anda sudah menyiapkan lingkungan pengembangan yang diperlukan. Anda memerlukan:

  1. Web Server Lokal: Seperti XAMPP atau MAMP yang sudah terinstal PHP dan MySQL.
  2. Text Editor: Gunakan text editor seperti Visual Studio Code atau Sublime Text untuk menulis kode PHP Anda.
  3. Browser: Untuk menguji dan melihat hasil dari aplikasi yang Anda buat.

Membuat Database dan Tabel MySQL

Langkah pertama dalam membuat sistem CRUD adalah membuat database dan tabel yang diperlukan di MySQL. Anda dapat melakukan ini melalui phpMyAdmin yang tersedia di XAMPP atau MAMP. Berikut adalah langkah-langkahnya:

  1. Buka http://localhost/phpmyadmin di browser Anda.
  2. Klik tab Database, lalu buat database baru dengan nama crud_db.
  3. Setelah database berhasil dibuat, pilih database tersebut dan buat tabel baru dengan nama users yang memiliki kolom sebagai berikut:
    • id: INT, Primary Key, Auto Increment
    • name: VARCHAR(100)
    • email: VARCHAR(100)
    • phone: VARCHAR(15)

Membuat Koneksi PHP ke MySQL

Setelah database dan tabel selesai dibuat, langkah selanjutnya adalah membuat koneksi antara PHP dan MySQL. Kode di bawah ini menunjukkan cara melakukannya:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "crud_db";

// Membuat koneksi
$conn = mysqli_connect($servername, $username, $password, $dbname);

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

Kode di atas akan membuat koneksi ke database crud_db. Pastikan Anda menyimpan kode ini di file terpisah, misalnya koneksi.php, agar dapat di-include di file lainnya.

Membuat Fitur Create (Menambah Data)

Langkah pertama dalam CRUD adalah Create, yaitu menambah data baru ke database. Buatlah form HTML untuk input data pengguna, kemudian proses data tersebut dengan PHP.

Form HTML untuk Input Data

<form action="create.php" method="POST">
    <label for="name">Name:</label>
    <input type="text" id="name" name="name" required><br><br>

    <label for="email">Email:</label>
    <input type="email" id="email" name="email" required><br><br>

    <label for="phone">Phone:</label>
    <input type="text" id="phone" name="phone" required><br><br>

    <input type="submit" value="Submit">
</form>

Proses Data dengan PHP

<?php
include 'koneksi.php';

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = $_POST['name'];
    $email = $_POST['email'];
    $phone = $_POST['phone'];

    $sql = "INSERT INTO users (name, email, phone) VALUES ('$name', '$email', '$phone')";

    if (mysqli_query($conn, $sql)) {
        echo "Data berhasil ditambahkan!";
    } else {
        echo "Error: " . $sql . "<br>" . mysqli_error($conn);
    }

    mysqli_close($conn);
}
?>

Kode di atas akan menangkap data dari form dan menyimpannya ke dalam tabel users di database crud_db.

Membuat Fitur Read (Menampilkan Data)

Setelah data berhasil disimpan, kita perlu menampilkannya. Berikut adalah cara menampilkan data dari database menggunakan PHP:

<?php
include 'koneksi.php';

$sql = "SELECT id, name, email, phone FROM users";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
    echo "<table><tr><th>ID</th><th>Name</th><th>Email</th><th>Phone</th><th>Actions</th></tr>";
    while($row = mysqli_fetch_assoc($result)) {
        echo "<tr><td>" . $row["id"]. "</td><td>" . $row["name"]. "</td><td>" . $row["email"]. "</td><td>" . $row["phone"]. "</td><td><a href='update.php?id=".$row["id"]."'>Edit</a> | <a href='delete.php?id=".$row["id"]."'>Delete</a></td></tr>";
    }
    echo "</table>";
} else {
    echo "Tidak ada data.";
}

mysqli_close($conn);
?>

Kode di atas akan menampilkan data yang tersimpan dalam tabel users dalam bentuk tabel HTML. Selain itu, disertakan juga opsi untuk mengedit dan menghapus data.

Membuat Fitur Update (Memperbarui Data)

Untuk memperbarui data, kita perlu membuat halaman form yang memuat data yang akan diperbarui. Berikut adalah contoh implementasinya:

Form Update Data

<?php
include 'koneksi.php';

$id = $_GET['id'];
$sql = "SELECT name, email, phone FROM users WHERE id=$id";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);

?>

<form action="update.php" method="POST">
    <input type="hidden" name="id" value="<?php echo $id; ?>">

    <label for="name">Name:</label>
    <input type="text" id="name" name="name" value="<?php echo $row['name']; ?>" required><br><br>

    <label for="email">Email:</label>
    <input type="email" id="email" name="email" value="<?php echo $row['email']; ?>" required><br><br>

    <label for="phone">Phone:</label>
    <input type="text" id="phone" name="phone" value="<?php echo $row['phone']; ?>" required><br><br>

    <input type="submit" value="Update">
</form>

Proses Update Data

<?php
include 'koneksi.php';

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $id = $_POST['id'];
    $name = $_POST['name'];
    $email = $_POST['email'];
    $phone = $_POST['phone'];

    $sql = "UPDATE users SET name='$name', email='$email', phone='$phone' WHERE id=$id";

    if (mysqli_query($conn, $sql)) {
        echo "Data berhasil diperbarui!";
    } else {
        echo "Error: " . $sql . "<br>" . mysqli_error($conn);
    }

    mysqli_close($conn);
}
?>

Dengan kode di atas, Anda dapat memperbarui data pengguna yang ada di tabel users.

Membuat Fitur Delete (Menghapus Data)

Terakhir, kita akan membuat fitur untuk menghapus data dari database. Proses ini sangat sederhana dan langsung ke intinya:

<?php
include 'koneksi.php';

$id = $_GET['id'];

$sql = "DELETE FROM users WHERE id=$id";

if (mysqli_query($conn, $sql)) {
    echo "Data berhasil dihapus!";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}

mysqli_close($conn);
?>

Kode di atas akan menghapus data berdasarkan ID yang dikirim melalui URL. Pastikan Anda berhati-hati saat menggunakan fitur ini karena data yang terhapus tidak dapat dikembalikan.

Kesimpulan

Selamat! Anda telah berhasil membuat sistem CRUD sederhana dengan PHP dan MySQL. Dengan memahami konsep CRUD dan langkah-langkah yang telah dijelaskan, Anda sekarang memiliki dasar yang kuat untuk mengembangkan aplikasi web yang lebih kompleks.

Terima kasih sudah membaca artikel ini, semoga bermanfaat!