Cara membuat form entry data edit update hapus di php

Pada kesempatan baik ini kami akan memberikan sebuah tutorial tentang bagaimana cara membuat form dan script edit data dengan PHP MySQL, yaitu mengambil kembali data yang pernah diinput ke dalam database, kemudian data tersebut di edit, dan kemudian di insert / input kembali ke dalam database tersebut.

Sebagai contoh ketika kita mendaftarkan akun baru ke Facebook, Twitter, G+, atau sejenisnya, tetapi setelah kita mengisi kolom yang tersedia ternyada ada data yang salah misalnya nama atau tanggal lahir. Kemudian sudah pasti kita akan jelajah ke menu edit profil untuk mengedit/ mengganti data yang salah tadi dengan data yang benar kemudian diinsert kembali/ update, inilah yang disebut dengan Edit Data. Sebagai programmer kita tidak akan membahas bagaimana cara mengedit data tersebut pada Facebook, Twitter atau G+, melainkan akan membahas bagaimana membuat sebuah module script edit data tersebut dengan pemrograman PHP.

Tutorial membuat form dan script edit data dengan PHP MySQL lengkap dengan uji cobanya, kami lakukan pada sistem operasi Windows 7 dan menggunakan web server XAMPP ver 2.5 include dengan database MySQL. Untuk mengikuti tutorial ini pastikan komputer anda telah terinstall web server XAMPP tersebut.

Pada tutorial sebelumnya kami telah membahas bagaimana cara membuat form login dan logout dengan PHP dan MySQL. Dan berikut adalah langkah - langkah membuat form dan script edit data dengan PHP MySQL, lengkap dengan contoh study kasusnya:

Membuat Form dan Script Edit Data dengan PHP MySQL

Download eBook Script Edit Data PHP



Form Edit Data PHP

1. Kami asumsikan Anda telah membuat database dan table MySQL persis seperti gambar dibawah ini, dengan nama database "karyawan"

Cara membuat form entry data edit update hapus di php

membuat form edit data dengan php mysql

Database pada gambar diatas terdiri atas satu buah table yaitu tabel "data_karyawan" dengan 13 field/atribut yang masing-masing secara berurut adalah nik, nama, namafoto, jk, jab, dept, tmp_lhr, tgl_lhr, gol_darah, agama, status, telp, email. Deskripsi untuk field tersebut dapat Anda pahami langsung pada script php nya.

2. Desain form edit data menggunakan script HTML. Bentuk tampilan seperti gambar berikut:

Cara membuat form entry data edit update hapus di php

membuat form edit data dengan php mysql
Cara membuat form entry data edit update hapus di php

membuat form edit data dengan php mysql

Untuk membentuk form edit data yang dapat diakses melalui web browser seperti gambar diatas, tulis 2 (dua) script PHP berikut pada text editor (notepad):
Save as index.php

<html>
<head>
<title>Membuat Form Edit Data dengan PHP dan MySQL</title>
<link href="style.css" rel="stylesheet" type="text/css">
<style type="text/css">
body{
    background-color:#cccccc;
}
ul.navbar {
    list-style-type: none;
    padding: 0;
    margin: 0;
    position: relative;
    top: 0.5em;
    left: 1em;
    width: 11em;
}
ul.navbar li {
    background: #E6E6FA;
    margin: 0.5em 0;
    padding: 0.3em;
    border-right: 1em solid #FF6600;
}
ul.navbar a {
    text-decoration: none;
}
h2 {
    font-family: Helvetica, Geneva, Arial, Sans-Regular, sans-serif
}
address {
    margin-top: 1em;
    padding-top: 1em;
    border-top: thin dotted
}
    a:link,a:visited,a:active {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 11px;
    color: #000000;
    text-decoration: none;
}
a:hover {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    color: blue;
    text-decoration: none;
}
</style>
</head>
<body>
<br>
<table width="1306" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
    <td width="10" bgcolor="#B0C4DE"> </td>
    <td width="140" height="120" bgcolor="#B0C4DE"><div align="center"><img src="image/logo.png" width="100" height="90"></div></td>
    <td width="10" bgcolor="#B0C4DE"> </td>
    <td width="1136" bgcolor="#B0C4DE"><div align="center"><span class="header">SCRIPT EDIT DATA PHP MYSQL<br></span>
    <b>RAJA PUTRA MEDIA</b><span class="header"><br></span></div></td>
    <td width="10" bgcolor="#B0C4DE"></td>
</tr>
<tr bgcolor="#F8F8FF">
    <td> </td>
    <td height="27"><div align="left"><strong><? echo "Tanggal : ".date("d-M-y");?></strong></div></td>
    <td> </td>
    <td align="right">Selamat Datang Admin </td>
    <td> </td>
</tr>
<tr bgcolor="#F8F8FF">
    <td> </td>
    <td rowspan="4" valign="top"><table width="144" height="400" bgcolor="#B0C4DE" border="0" cellspacing="0" cellpadding="0" align="top">
        <tr>
        <td valign="top"><ul class="navbar">
            <li><b>MAIN MENU</b></li><br>
            <li><a href="index.php" title="Balik"> Home</a></li>
            <li><a href="index.php?page=formedit" title="edit data"> Edit</a></li>
        </ul></td>
        </tr></table></td>
    <td rowspan="4"> </td>
    <td rowspan="4" valign="top"><table width="1136" height="400" bgcolor="white" border="0" cellspacing="0" cellpadding="0">
        <tr>
            <td width="936" valign="top">
            <?php
            $page = (isset($_GET['page']))? $_GET['page'] : "main";
            switch ($page) {
                case 'formedit'    : include "formedit.php"; break;
                case 'edit' : include "edit.php"; break;
                case 'main' :
            }
            ?></td>    
        </tr></table></td>
    <td rowspan="4"> </td>
</tr>
<tr bgcolor="#F8F8FF">
        <td> </td>
</tr>
<tr bgcolor="#F8F8FF">
        <td> </td>
</tr>
<tr bgcolor="#F8F8FF">
        <td> </td>
</tr>
<tr bgcolor="#F8F8FF">
    <td> </td>
    <td> </td>
    <td> </td>
    <td> </td>
    <td> </td>
</tr>
<tr bgcolor="#B0C4DE">
    <td height="36" colspan="5" bgcolor="#B0C4DE"><div align="right" style="margin:0 10px 0 0;"><font color="#FFFFE0">Development 2014 | by Raja Putra Media</font><br></div></td>
</tr>
</table>
<div align="center"></div>
</body>
</html>

Save as formedit.php

<div style="border:1px solid rgb(238,238,238); padding:10px; overflow:auto; width:1110px; height:375px;">
<form action="<?$_SERVER['PHP_SELF']?>" method="POST" name="cariedit" id="cariedit">
    <strong>Edit Data  :</strong>
    <input type="text" name="cariedit" id="cariedit" size="20" maxlength="9"> * isi NIK untuk data karyawan yang akan diedit<br>                 
    <input type="submit" name="submit" id="submit" value="GO">
</form>
<?php
$Open = mysql_connect("localhost","root","");
    if (!$Open){
    die ("Koneksi ke Engine MySQL Gagal !");
        }
$Koneksi = mysql_select_db("karyawan");
    if (!$Koneksi){
    die ("Koneksi ke Database Gagal !");
    }
//menampilkan data
if ((isset($_POST['submit'])) AND ($_POST['cariedit'] <> "")) {
  $nik = $_POST['cariedit'];
  $sql = mysql_query ("SELECT * FROM data_karyawan WHERE nik='$nik' ") or die(mysql_error());
    $hasil = mysql_fetch_array ($sql);
    $nik = stripslashes ($hasil['nik']);
    $nama = stripslashes ($hasil['nama']);
    if (!$hasil) {
        echo 'Maaf, NIK yang dimasukan tidak terdapat dalam database!'; // menampilkan pesan zero data
    } else {
?>
<table width="910" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr></tr>
</table>
<?php
        echo '<p>NIK= <font color="#FF6600"><strong>'.$nik.'</strong></font>, dengan Nama= <font color="#FF6600"><strong>'.$nama.'</strong></font> berhasil ditemukan.</p>
             <p>Lanjutkan edit data?</p>
             <ol><font color="green" size="2" face="arial">
                    <li><a href="index.php?page=edit&nik='.$nik.'">Ya</a></li>
                    <li><a href="index.php?page=formedit">Tidak</a></li>
                </font></ol>';
    } 
}
//Tutup koneksi engine MySQL
    mysql_close($Open);
?>
</div>

3. Bentuk file php dengan nama "edit.php", fungsinya adalah sebagai form action yang dikirim oleh formedit.php

Save as edit.php

<div style="border:1px solid rgb(238,238,238); padding:10px; overflow:auto; width:1110px; height:375px;">
<?php
$Open = mysql_connect("localhost","root","");
        if (!$Open){
        die ("Koneksi ke Engine MySQL Gagal !");
        }
$Koneksi = mysql_select_db("karyawan");
        if (!$Koneksi){
        die ("Koneksi ke Database Gagal !");
        }
if (isset($_GET['nik'])) {
    $nik = $_GET['nik'];
} else {
    die ("Error. No Nik Selected! ");    
}
//Tampilkan data dari tabel karyawan
    $query    = "SELECT * FROM data_karyawan WHERE nik='$nik'";
    $sql    = mysql_query ($query);
    $hasil    = mysql_fetch_array ($sql);
    $nik    = $hasil['nik'];
    $nama    = $hasil['nama'];
    $namafoto    = stripslashes ($hasil['namafoto']);
    $foto    = $hasil['namafoto'];
    $jk        = $hasil['jk'];
    $jab    = $hasil['jab'];
    $dept     = $hasil['dept'];
    $tmp_lhr    = $hasil['tmp_lhr'];
    //Memecah tanggal
    list($thn,$bln,$tgl) = explode ("-",$hasil['tgl_lhr']);
    $gol_darah    = $hasil['gol_darah'];
    $agama        = $hasil['agama'];
    $status        = $hasil['status'];
    $telp        = $hasil['telp'];
    $email        = $hasil['email'];    
//proses edit data karyawan
if (isset($_POST['Edit'])) {
    $nik    = $_POST['hnik'];
    $nama    = $_POST['nama'];
    $jk        = $_POST['jk'];
    $jab    = $_POST['jab'];
    $dept    = $_POST['dept'];
    $tmp_lhr    = $_POST['tmp_lhr'];
    $tgl_lhr    = $_POST['thn']."-".$_POST['bln']."-".$_POST['tgl'];
    $gol_darah    = $_POST['gol_darah'];
    $agama    = $_POST['agama'];
    $status = $_POST['status'];
    $telp    = $_POST['telp'];
    $email    = $_POST['email'];
    $namafoto    = $_FILES['foto']['name'];
    //Cek Photo
    if (strlen($namafoto)>0) {
        //upload Photo
        if (is_uploaded_file($_FILES['foto']['tmp_name'])) {
            move_uploaded_file ($_FILES['foto']['tmp_name'], "images/".$namafoto);
            mysql_query ("UPDATE karyawan SET namafoto='$namafoto' WHERE nik='$nik'");
        }
    }
    //update
    $query = "UPDATE data_karyawan SET nama='$nama', jk='$jk', jab='$jab', dept='$dept', tmp_lhr='$tmp_lhr', tgl_lhr='$tgl_lhr', gol_darah='$gol_darah', agama='$agama', status='$status', telp='$telp', email='$email' WHERE nik='$nik'";
    $sql = mysql_query ($query);
    //setelah berhasil update
    if ($sql) {
        echo "<h3><font color=#8BB2D9><center>Data Berhasil diedit</center></font></h3>";    
    } else {
        echo "<h3><font color=red><center>Data gagal diedit</center></font></h3>";    
    }
}
?>
<form action="#" method="POST" name="formedit" enctype="multipart/form-data">
<table width="1100" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
            <td> </td>
            <td> </td>
            <td width="550"> </td>
        </tr>
        <tr>
            <td> </td>
            <td> </td>
            <td width="550"><font color="orange" size="4" face="arial"><b>Form Edit Data</b></font></td>
        </tr>
        <tr>
            <td> </td>
            <td> </td>
            <td width="550"> </td>
        </tr>
        <tr bgcolor="#DFE6EF" height="20">
            <td> </td>
            <td> </td>
            <td width="550" align="center"></td>
        </tr>
        <tr>
            <td width="18"> </td>
            <td width="142" height="36">NIK</td>
            <td width="550">:<b><?=$nik?>
                <input type="hidden" name="hnik" value="<?=$nik?>"></b></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Nama</td>
            <td><input type="text" name="nama" size="40" maxlength="30" value="<?=$nama?>"></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Foto</td> 
            <td><? if (empty($foto)) 
                    echo "<strong><img src='images/nopic.gif' width='70' height='110'> <br> No Image </strong>";
                    else
                    echo"<img class='shadow' align=left src='images/$foto' width='70' heigth='110'/ title='$nama'>"
                ?><br /><br /><br /><br /><br /><br /><br /><?=$namafoto?><br /><br /><input type="file" name="foto" size="49"/></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Jenis Kelamin</td>
            <td><input type="radio" name="jk" value="L" <? echo ($jk=='L')?"checked":""; ?>>>Laki-laki   
                <input type="radio" name="jk" value="P" <? echo ($jk=='P')?"checked":""; ?>>>Perempuan</td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Jabatan</td>
            <td><input type="text" name="jab" size="25" maxlength="15" value="<?=$jab?>"></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Departemen</td>
            <td><input type="text" name="dept" size="25" maxlength="16" value="<?=$dept?>"<</td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Tempat Lahir</td>
            <td><input type="text" name="tmp_lhr" size="25" maxlength="15" value="<?=$tmp_lhr?>"></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Tanggal Lahir</td>
            <td><select name="tgl">
            <?
                for ($i=0; $i<=31; $i++) {
                    $tg = ($i<10) ? "0$i" : $i;
                    $sele = ($tg==$tgl)? "selected" : "";
                    echo "<option value="$tg" $sele="">$tg</option>";    
                }
            ?>
                </select> - 
                <select name="bln">
            <?
                for ($i=0; $i<=12; $i++) {
                    $bl = ($i<10) ? "0$i" : $i;
                    $sele = ($bl==$bln)?"selected" : "";
                    echo "<option value="$bl" $sele="">$bl</option>";    
                }
            ?>
                </select> - 
                <select name="thn">
            <?
                for ($i=1949; $i<=2000; $i++) {
                    $th = ($i<1950) ? "0000" : $i;
                    $sele = ($i==$thn)?"selected" : "";
                    echo "<option value="$th" $sele="">$th</option>";    
                }
            ?>
                </select></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Golongan Darah</td>
            <td><input type="radio" name="gol_darah" value="A" <? echo ($gol_darah=='A')?"checked":""; ?>>A   
                <input type="radio" name="gol_darah" value="AB" <? echo ($gol_darah=='AB')?"checked":""; ?>>AB   
                <input type="radio" name="gol_darah" value="B" <? echo ($gol_darah=='B')?"checked":""; ?>>B   
                <input type="radio" name="gol_darah" value="O" <? echo ($gol_darah=='O')?"checked":""; ?>>O</td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Agama</td>
            <td><select name="agama">
                <option value="-" <? echo ($agama=='-')?"selected":""; ?>>-pilihan-
                <option value="Islam" <? echo ($agama=='Islam')?"selected":""; ?>>Islam
                <option value="Protestan" <? echo ($agama=='Protestan')?"selected":""; ?>>Protestan
                <option value="Katolik" <? echo ($agama=='Katolik')?"selected":""; ?>>Katolik
                <option value="Hindu" <? echo ($agama=='Hindu')?"selected":""; ?>>Hindu
                <option value="Budha" <? echo ($agama=='Budha')?"selected":""; ?>>Budha
                </select></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">Status Pernikahan</td>
            <td><select name="status">
                <option value="-" <? echo ($status=='-')?"selected":""; ?>>-pilihan-
                <option value="TK" <? echo ($status=='TK')?"selected":""; ?>>Belum Menikah
                <option value="K0" <? echo ($status=='K0')?"selected":""; ?>>Menikah Belum Memiliki Anak
                <option value="K1" <? echo ($status=='K1')?"selected":""; ?>>Menikah Memiliki 1 Anak
                <option value="K2" <? echo ($status=='K2')?"selected":""; ?>>Menikah Memiliki 2 Anak
                <option value="K3" <? echo ($status=='K3')?"selected":""; ?>>Menikah Memiliki 3 Anak
                <option value="K4" <? echo ($status=='K4')?"selected":""; ?>>Menikah Memiliki 4 Anak
                <option value="K5" <? echo ($status=='K5')?"selected":""; ?>>Menikah Memiliki 5 Anak
                </select></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">No. Telp</td>
            <td><input type="text" name="telp" size="25" maxlength="12" value="<?=$telp?>"></td>
        </tr>
        <tr>
            <td> </td>
            <td height="36">E-Mail</td>
            <td><input type="text" name="email" size="50" maxlength="40" value="<?=$email?>"></td>
        </tr>
        <tr>
            <td> </td>
            <td height="20"> </td>
            <td> </td>
        </tr>
        <tr>
            <td> </td>
            <td> </td>
            <td><input type="submit" name="Edit" value="Edit Data">  
                <input type="button" value="Cancel" onclick=location.href="index.php?page=formedit" title="kembali ke form edit data"></td>
        </tr>
        <tr>
            <td> </td>
            <td height="32"></td>
            <td> </td>
        </tr>
    </table>
</form>
<?php
//Tutup koneksi engine MySQL
    mysql_close($Open);
?>
</div>

File edit.php diatas akan memanggil dan menampilkan data dari database, kemudian data tersebut akan di insert/input kembali ke dalam database setelah data diedit. Tampilan edit data seperti gambar berikut:

Cara membuat form entry data edit update hapus di php

membuat form edit data dengan php mysql

Download Tutorial Form Edit Data PHP MySQL

Download Script Edit Data PHP MySQL

4. Selesai.

Sekian penjelasan dari kami tentang bagaimana cara membuat form dan script edit data dengan PHP MySQL. Untuk mendapatkan source code nya Anda dapat langsung mendownload melalui link di atas, jika link download tidak aktif atau error mohon hubungi kami melalui SMS atau email atau melalui form komentar dan obrolan. Semoga dapat membantu.

Baca juga :

  • Script PHP Export To Excel
  • Script PHP Ganti Password MySQL | Tutorial
  • Script PHP Update Database MySQL | CRUD
  • Script Tampil Database dengan PHP MySQL | VIEW Data
  • Cara Membuat Laporan PDF dengan PHP dan MySQL
  • Cara Membuat Script Login Multiuser dengan PHP dan MySQL
  • Membuat Form Input Data dengan PHP dan MySQL
  • Script PHP untuk Cari Data pada Database MySQL

Membuat Form dan Script Edit Data dengan PHP MySQL

Tags: form edit data php mysql, script edit data php mysql, edit data php, edit data mysql, crud php mysqli, membuat form dan script edit data php mysqli