Update Data Anggota Pendaftaran Online Dengan PHP dan MySQL

Setelah beberapa tahap yang lalu kita telah membuat bagaimana cara menambahkan data anggota ke database pendaftaran online kali ini kita akan menambahkan fitur update agar sistem yang kita buat ini dapat memperbarui data anggota sehingga tutorial ini sudah sampai pada CRU (Create, Read, Update) sisa D (Delete) yang akan kita bahas pada tutorial berikutnya.

Untuk melakukan update data di database maka dapat menggunakan perintah update, sebenarnya caranya hampir sama seperti menambahkan data, bedanya adalah prosesnya.

Update Database Anggota Pendaftaran

Untuk melakukan update data anggota di database pertama yang harus dilakukan kita perlu merubah link navigasi edit yang berada di home.php, silahkan buke file home.php yang ada di folder content lalu ubah kode dibawah ini:

<a href="">Edit</a>

Menjadi kode dibawah ini:

<a href="index.php?page=detail&id=<?php echo $data['ID']; ?>">Edit</a>

Jika sudah sekarang buka file index.php lalu ubah kode dibawah ini:

<?php

if(empty($_GET['page']) OR $_GET['page'] == NULL) {
    include('content/home.php');
}
elseif(!empty($_GET['page']) && $_GET['page'] == 'tambah') {
    include('content/tambah.php');
}
elseif(!empty($_GET['page']) && $_GET['page'] == 'detail') {
    include('content/detail.php');
}
 
?>

Menjadi seperti ini…

<?php

if(empty($_GET['page']) OR $_GET['page'] == NULL) {
    include('content/home.php');
}
elseif(!empty($_GET['page']) && $_GET['page'] == 'tambah') {
    include('content/tambah.php');
}
elseif(!empty($_GET['page']) && $_GET['page'] == 'detail') {
    include('content/detail.php');
}
elseif(!empty($_GET['page']) && $_GET['page'] == 'update') {
    include('content/update.php');
}
 
?>

Setelah semua sudah selesai, maka jangan dibuka dulu halaman pendaftaran karena akan menampilkan pesanan error yang disebabkan tidak adanya file update.php didalam folder content.

Nah seperti saya katakan bahwa form atau formulir update anggota pendaftaran online ini mirip dengan form tambah anggota pendaftaran online, karena hampir sama maka kita akan mengadopsi form dari file tambah sehingga menjadi seperti dibawah ini:

<?php 
$ID         = $_GET['id'];
$query      = mysql_query("SELECT * FROM anggota WHERE ID = $ID");
$data       = mysql_fetch_array($query);
$tgl_lahir  = date('d', strtotime($data['tanggal_lahir']));
$bln_lahir  = date('m', strtotime($data['tanggal_lahir']));
$thn_lahir  = date('Y', strtotime($data['tanggal_lahir']));
?>

<h3>Edit Anggota</h3>
<form action="aksi/aksi_update.php" method="POST">
    <input type="hidden" name="id" value="<?php echo $ID; ?>">
    <div class="content">
        <table class="table-form" border="0" width="100%" cellpadding="0" cellspacing="0">
            <tr>
                <td width="20%"><label for="nama">Nama Lengkap</label></td>
                    <td colspan="3"><input name="nama" id="nama" type="text" class="form" value="<?php echo $data['nama_lengkap']; ?>"></td>
            </tr>
            <tr>
                <td><label for="tempat_lahir">Tempat Lahir</label></td>
                <td><input name="tempat_lahir" id="tempat_lahir" type="text" class="form" value="<?php echo $data['tempat_lahir']; ?>"></td>
                <td><label>Tanggal Lahir</label></td>
                <td>
                    <select name="tgl_lahir" class="form">
                        <?php 
                            for($tanggal = 1; $tanggal <= 31; $tanggal++) {
                               if($tanggal < 10) {
                                   echo '<option value="0'. $tanggal .'"'. ($tgl_lahir == 0 . $tanggal ? ' selected="selected"' : '') .'>0'. $tanggal .'</option>';
                               }
                               else {
                                   echo '<option value="'. $tanggal .'"'. ($tgl_lahir == $tanggal ? ' selected="selected"' : '') .'>'. $tanggal .'</option>';
                                }
                            }
                        ?>
                    </select>
                    <select name="bln_lahir" class="form">
                        <?php 
                            for($bulan = 1; $bulan <= 12; $bulan++) {
                                if($bulan < 10) {
                                    echo '<option value="0'. $bulan .'"'. ($bln_lahir == 0 . $bulan ? ' selected="selected"' : '') .'>0'. $bulan .'</option>';
                                }
                                else {
                                    echo '<option value="'. $bulan .'"'. ($bln_lahir == $bulan ? ' selected="selected"' : '') .'>'. $bulan .'</option>';
                                 }
                             }
                        ?>
                        </select>
                        <select name="thn_lahir" class="form">
                            <?php 
                                for($tahun = date('Y'); $tahun >= 1980; $tahun--) {
                                    echo '<option value="'. $tahun .'"'. ($thn_lahir == $tahun ? ' selected="selected"' : '') .'>'. $tahun .'</option>';
                                }
                            ?>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td valign="top"><label for="alamat">Alamat</label></td>
                    <td valign="top" colspan="2">
                        <textarea name="alamat" id="alamat" class="form" cols="50" rows="8"><?php echo $data['alamat']; ?></textarea>
                    </td>
                    <td valign="top">
                        <div>
                            <label for="kota">Kota</label>
                                <input type="text" name="kota" id="kota" class="form" value="<?php echo $data['kota']; ?>">
                        </div>
                        <div>
                            <label for="negara">Negara</label>
                            <input type="text" name="negara" id="negara" class="form" value="<?php echo $data['negara']; ?>">
                        </div>
                        <div>
                            <label for="kode_pos">Kode Pos</label>
                            <input type="number" name="kode_pos" id="kode_pos" class="form" value="<?php echo $data['kode_pos']; ?>">
                        </div>
                    </td>
                </tr>
                <tr>
                    <td><label for="hp">No. HP</label></td>
                    <td colspan="3"><input name="hp" id="hp" type="number" class="form" value="<?php echo $data['no_hp']; ?>"></td>
                </tr>
                <tr>
                    <td><label for="email">Email</label></td>
                    <td colspan="3"><input name="email" id="email" type="text" class="form" value="<?php echo $data['email']; ?>"></td>
                </tr>
                <tr>
                    <td><label for="tinggi_badan">Tinggi Badan</label></td>
                    <td colspan="3"><input name="tinggi_badan" id="tinggi_badan" type="number" class="form" value="<?php echo $data['tinggi_badan']; ?>"></td>
                </tr>
                <tr>
                    <td><label for="berat_badan">Berat Badan</label></td>
                    <td colspan="3"><input name="berat_badan" id="berat_badan" type="number" class="form" value="<?php echo $data['berat_badan']; ?>"></td>
                </tr>
            </table>
        </div>
        <input type="submit" class="btn" value="Simpan">
</form>

Salin kode diatas lalu simpan di folder content dengan nama update.php, jika sudah silahkan buka url pendaftaran anda lalu klik link edit yang ada dibagian kanan tabel di kolom aksi, setelah itu akan terlihat isi dari form-form yang ada di halaman udate tersebut seperti dibawah ini:

Baca juga:  Logika IF ELSE pada PHP

update database anggota pendaftaran online

Jika semua sudah sesuai dengan gambar diatas dan tidak ada error lagi maka kini saatnya kita membuat proses untuk form update.

Buatlah sebuah file dengan nama aksi_update.php lalu simpan di folder aksi, setelah itu salin kode dibawah ini:

<?php

include('../config/koneksi.php');

$ID              = $_POST['id'];
$nama            = $_POST['nama'];
$tempat_lahir    = $_POST['tempat_lahir'];
$tanggal_lahir   = $_POST['thn_lahir'] . '-' . $_POST['bln_lahir'] . '-' . $_POST['tgl_lahir'];
$alamat          =  $_POST['alamat'];
$kota            = $_POST['kota'];
$negara          = $_POST['negara'];
$kode_pos        = $_POST['kode_pos'];
$hp              = $_POST['hp'];
$email           = $_POST['email'];
$tinggi_badan    = $_POST['tinggi_badan'];
$berat_badan     = $_POST['berat_badan'];

$query = mysql_query("UPDATE anggota SET nama_lengkap = '$nama', tempat_lahir = '$tempat_lahir', tanggal_lahir = '$tanggal_lahir', alamat = '$alamat', kota= '$kota', negara= '$negara', kode_pos= '$kode_pos', no_hp= '$hp', email= '$email', tinggi_badan= '$tinggi_badan', berat_badan= '$berat_badan' WHERE ID = '$ID'");

if($query) {
    header('location:../index.php?aksi=update&status=true');
}
else {
    header('location:../index.php?page=update&id='. $ID .'&status=false');
}
?>

Lalu coba jalankan dengan cara klik tombol Simpan, jika ada berubah maka anda telah berhasil membuat update data anggota pendaftaran online ini. Demikian tutorial ini, untuk berikutnya kita akan membahas bagaimana cara menghapus data anggota pendaftaran online ini.