PHP NATIVE : Membuat CRUD

Tools Yang Di Perlukan :

  1. XAMPP (Download Disini)
  2. Text Editor
    Visual Studio Code (Download Disini)
    Sublime Text (Download Disini)

Langkah Langkah :

  • Membuat Database & Table Baru pada phpMyAdmin 

  • Setelah Itu membuat file baru pada file XAMPP nya
    – Buka Folder XAMPP
    – Setelah itu Buka htdocs
    – Didalam folder htdocs buat folder baru
  • Setelah Melakukan Langkah Di Nomor 2 tadi langsung kita membuat konfigurasi untuk menghubungkan database & table tadi

    koneksi.php
<?php
 
$host = "localhost"; // Nama host database
$user = "root"; // Nama pengguna database (default biasanya "root" untuk MySQL)
$pass = ""; // Kata sandi pengguna database (Jika menggunakan password)
$name = "contoh_crud"; // Nama database yang digunakan
 
$link = mysqli_connect($host, $user, $pass, $name);
 
// Mengirim pesan jika error disaat mengkoneksikan database
 
if (!$link) {
    die("Koneksi Dengan Database Gagal : " . mysqli_connect_errno() .
        " - " . mysqli_connect_error());
}
  • Setelah membuat koneksi langsung saja kita membuat untuk tampilan nya dengan nama file index.php

Preview

Codingan :

<?php
include 'koneksi.php'; // Untuk menyertakan (include) file koneksi.php ke dalam script PHP
$query = "SELECT * FROM sekolah"; // Untuk Memanggil data sesuai tabel
if (isset($_GET['aksi'])) {
    if ($_GET['aksi'] == 'delete') {
        // Untuk Menghapus sesuai data & ID
        $id = $_GET['id'];
        $query_delete = "DELETE FROM sekolah WHERE id = $id";
        $result_delete = mysqli_query($link, $query_delete);
 
        if ($result_delete) {
            echo "Data telah dihapus.";
        } else {
            echo "Gagal menghapus data: " . mysqli_error($link);
        }
    }
}
 
$result = mysqli_query($link, $query);
//  digunakan untuk menjalankan query SQL yang didefinisikan dalam variabel $query
//  menggunakan koneksi database yang didefinisikan dalam variabel $link
?>
 
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Contoh Crud</title>
</head>
<body>
    <h1>Data Siswa</h1>
    <a href="tambah.php">Tambahkan Data</a>
    <table border='1'>
        <tr>
            <th>No</th>
            <th>Nama</th>
            <th>Kelas</th>
            <th>Alamat</th>
            <th>Aksi</th>
        </tr>
        <?php
        $no = 1;
        while ($row = mysqli_fetch_assoc($result)) {
            echo "<tr>";
            echo "<td>" . $no . "</td>";
            echo "<td>" . $row['nama'] . "</td>";
            echo "<td>" . $row['kelas'] . "</td>";
            echo "<td>" . $row['alamat'] . "</td>";
            echo "<td><a href='edit.php?id=" . $row['id'] . "'>Edit</a> | <a href='?aksi=delete&id=" . $row['id'] . "'>Delete</a></td>";
            echo "</tr>";
        }
        ?>
    </table>
</body>
 
</html>
  • Selanjut nya kita membuat Form & Controller untuk menambahkan data

Codingan Tambah.php (Form)

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Tambah Data Siswa</title>
</head>
 
<body>
    <h1>Tambah Data Siswa</h1>
    <form action="proses_tambah.php" method="post">
        <label for="nama">Nama:</label>
        <input type="text" id="nama" name="nama" required>
        <br>
 
        <label for="kelas">Kelas:</label>
        <input type="text" id="kelas" name="kelas" required>
        <br>
 
        <label for="alamat">Alamat:</label>
        <input type="text" id="alamat" name="alamat" required>
        <br>
 
        <input type="submit" value="Tambah">
    </form>
</body>
 
</html>

Proses_tambah.php (Controller)

<?php
include 'koneksi.php';
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // Ambil data dari form
    $nama = $_POST['nama'];
    $kelas = $_POST['kelas'];
    $alamat = $_POST['alamat'];
    // Query untuk menambahkan data ke dalam tabel
    $query = "INSERT INTO sekolah (nama, kelas, alamat) VALUES ('$nama', '$kelas', '$alamat')";
    $result = mysqli_query($link, $query);
    if ($result) {
        header("Location: index.php"); // Redirect ke halaman utama setelah data ditambahkan
    } else {
        echo "Gagal menambahkan data: " . mysqli_error($link);
    }
}
  • Setelah itu membuat Form Edit & Controller nya

Edit.php (Form)

<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Edit Data Siswa</title>
</head>
 
<body>
    <h1>Edit Data Siswa</h1>
    <?php
    include 'koneksi.php';
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        $id = $_POST['id'];
        $nama = $_POST['nama'];
        $kelas = $_POST['kelas'];
        $alamat = $_POST['alamat'];
        $query_update = "UPDATE sekolah SET nama = '$nama', kelas = '$kelas', alamat = '$alamat' WHERE id = $id";
        $result_update = mysqli_query($link, $query_update);
 
        if ($result_update) {
            echo "Data telah diupdate. <a href='index.php'>Kembali ke halaman utama</a>";
        } else {
            echo "Gagal mengupdate data: " . mysqli_error($link);
        }
    } else {
        $id = $_GET['id']; // Ambil ID dari URL
        $query_select = "SELECT * FROM sekolah WHERE id = $id";
        $result_select = mysqli_query($link, $query_select);
        $row = mysqli_fetch_assoc($result_select);
    ?>
        <form action="edit_proses.php" method="post">
            <input type="hidden" name="id" value="<?php echo $id; ?>">
            <label for="nama">Nama:</label>
            <input type="text" id="nama" name="nama" value="<?php echo $row['nama']; ?>" required>
            <br>
            <label for="kelas">Kelas:</label>
            <input type="text" id="kelas" name="kelas" value="<?php echo $row['kelas']; ?>" required>
            <br>
            <label for="alamat">Alamat:</label>
            <input type="text" id="alamat" name="alamat" value="<?php echo $row['alamat']; ?>" required>
            <br>
            <input type="submit" value="Update">
        </form>
    <?php
    }
    ?>
</body>
 
</html>

Subscribe

Related articles

Memahami Microservices dengan Laravel

Microservices adalah pendekatan dalam pengembangan perangkat lunak di mana...

Tailwind CSS: Panduan Lengkap dan Keunggulannya

Tailwind CSS adalah salah satu framework CSS yang semakin...

Bagaimana sih cara menjadi Web Developer?

Memulai Karier sebagai Web Developer Meskipun sudah mengetahui berbagai keterampilan...

Laravel 11 : Send Mail by Gmail SMTP

Mengirim Email Menggunakan Gmail SMTP di Laravel 11 Mengirim email...

Cara mendapatkan Kredensial token email

Mendapatkan Credential Token Email di Laravel Dalam aplikasi web modern,...

LEAVE A REPLY

Please enter your comment!
Please enter your name here