Rabu, 19 Agustus 2020

Membuat CRUD Dasar PHP dan MySQLi part 3

Assalamualaikum Wr,Wb
Melanjutkan Dari Postingan CRUD Part2, kali ini akan share bagaiman cara update data dari database MysQli, pastikan sudah mengikuti tahan dari seri CRUD part1 dan part2, karen postingan ini saling berkaitan, yuk langsung saja yah.
Persiapan
  1. Sudah mengikuti Crud part1 dan part2
File File yang dibutuhkan
  1. File koneksi.php
  2. File index.php
  3. File edit_data.php
  4. File aksi_crud.php
File File diatas sebagian sudah dibahas, jika file sudah ada tinggal dibuka lagi untuk sedikit ditambahkan code untuk keperluan update data
File index.php

<!-- panggil file koneksi -->
<?php include "koneksi.php" ?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Belajar CRUD</title>
    <style>
        tr, th, td{
            padding: 10px;
        }
        th{
            background-color: indianred;
            color:#fff;
            font-size:large
        }
        h1{
            text-transform: uppercase;
        }
    </style>
</head>
<body>
    <center>
    <h1>Tampil Semua Mahasiswa</h1>

    <!-- code untuk memanggil form tambah data -->
    <div style="margin-left:650px"><h3><a href="tambah_data.php">Tambah Data</a></h3></div>

    <table border="1px solid">
        <tr>
            <th>No</th>
            <th>NPM</th>
            <th>Nama Mahasiswa</th>
            <th>Program Studi</th>
            <th>Tanggal Lulus</th>
            <th>Nomor Ijazah</th>
            <th>IPK</th>
            <th>AKSI</th> // kode baru
        </tr>
        <?php
        $sql = mysqli_query($konek, "SELECT * FROM mahasiswa ORDER BY id ASC");
        $no = 1;
        while ($d = mysqli_fetch_array($sql)) {
            echo "<tr>
                        <td width='40px' align='center'>$no</td>
                        <td>$d[npm]</td>
                        <td>$d[nama_mhs]</td>
                        <td>$d[prodi]</td>
                        <td>$d[tgl_lulus]</td>
                        <td>$d[no_ijazah]</td>
                        <td>$d[ipk]</td>

                        <td>
                            <a href='edit_data.php?id=$d[id]'>EDIT</a> 
                        </td>
                    </tr>";
            $no++;
        }
        ?>
    </table>
    </center>
</body>
</html>

Perhatikan code di atas, ada penambahan code baru untuk kebutuhan menu edit lebih jelasnya seperti dibawah ini

 <td>
    <a href='edit_data.php?id=$d[id]'>EDIT</a> 
</td>

File edit_data.php

<?php
    include "koneksi.php";
    $id =  $_GET['id'];
    $sql = mysqli_query($konek, "SELECT * FROM mahasiswa where id = '$id'");
    $row = mysqli_fetch_array($sql);
?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Edit Data</title>
    <style>
        table,tr,th,td{
            width: 400px;
            padding: 3px;
        }
    </style>
</head>
<body>
<center>
    <h1>Edit Data Mahasiswa</h1>
    <form method="post" action="aksi_crud.php?act=edit">
        <table class="table">
            <input type="hidden" name="id" value="<?php echo $row['id'] ?>">
            <tr>
                <td>NPM</td>
                <td>
                    <input type="text" name="npm" value="<?php echo $row['npm'] ?>" />
                </td>
            </tr>

            <tr>
                <td>Nama Mahasiswa</td>
                <td>
                     <input type="text" name="nama" value="<?php echo $row['nama_mhs'] ?>" />
                </td>
            </tr>

            <tr>
                <td>Program Studi</td>
                <td>
                    <select name="prodi">
                        <option value="Teknik Informatika" <?php echo $row["prodi"] == "Teknik Informatika" ? "selected" : "" ?>>Teknik Informatika</option>
                        <option value="Sistem Informasi" <?php echo $row["prodi"] == "Sistem Informasi" ? "selected" : "" ?>>Sistem Informasi</option>
                        <option value="Teknik Komputer" <?php echo $row["prodi"] == "Teknik Komputer" ? "selected" : "" ?>>Teknik Komputer</option>
                    </select>
                </td>
            </tr>
            <tr>
                <td>Tanggal Lulus</td>
                <td>
                   <input type="date" name="tgllulus" value="<?php echo $row['tgl_lulus'] ?>" />
                </td>
            </tr>

            <tr>
                <td>No. Ijazah</td>
                <td>
                   <input type="text" name="noijazah" value="<?php echo $row['no_ijazah'] ?>" />
                </td>
            </tr>

            <tr>
                <td>IPK</td>
                <td>
                    <input type="text" step="0.01" name="ipk" value="<?php echo $row['ipk'] ?>" />
                </td>
            </tr>

            <tr>
                <td></td>
                <td>
                    <input  type="submit" value="Simpan" />
                    <a  href="crud.php"><button>Kembali</button></a>
                </td>
            </tr>
        </table>
        </form>
</center>
</body>
</html>

File edit_data kurang lebihnya sama dengan form tambah data di mana hanya menambahkan value di setiap inputannya. untuk mendapatkan data berdasarkan id, tambahkan query seperti di bawah ini

<?php
    $id =  $_GET['id'];
    $sql = mysqli_query($konek, "SELECT * FROM mahasiswa where id = '$id'");
    $row = mysqli_fetch_array($sql);
?>
Query diatas untuk menampilkan value yang akan ditampilkan di form edit_data, dari tabel mahasiswa berdasarkan id
File aksi_crud.php

elseif($_GET['act'] == 'edit')
{
    //variabel dari elemen form
    $id     = $_POST['id'];
    $npm 	= $_POST['npm'];
    $nama 	= $_POST['nama'];
    $prodi  = $_POST['prodi'];
    $tgl	= $_POST['tgllulus'];
    $noijazah = $_POST['noijazah'];
    $ipk	= $_POST['ipk'];

    $query="UPDATE mahasiswa SET npm='$npm',nama_mhs='$nama',prodi='$prodi',tgl_lulus='$tgl', no_ijazah='$noijazah', ipk = '$ipk' where id='$id'";
    mysqli_query($konek, $query);
    header('location:crud.php');

} // akhir proses edit data

Untuk Proses update data kurang lebinya sama seperti tambah data hanya bedanya menambahkan where berdasarkan id mahasiswa, untuk query update data codenya seperti dibawah ini

$query="UPDATE mahasiswa SET npm='$npm',nama_mhs='$nama',prodi='$prodi',tgl_lulus='$tgl', no_ijazah='$noijazah', ipk = '$ipk' where id='$id'";
query diatas mennggunakan where id, id diambil dari berdasarkan form edit_data
Semoga temen temen paham dengan penjelansan yang memang kurang jelas ya,wkwk
Silahkan temen temen buka project crud dibrowser perhatikan nanti akan ada tambahan menu edit data
gambar setelah penambahan menu edit
Gambar form edit_data bila menu edit di klik
Bagaimana mudahkan? Next potingan akan membahas lanjutan dari crud hapus data Sekian dulu pembahansan dari edit data, dan semoga bermanfaat

Tidak ada komentar:
Tulis komentar

Kategori