Tutorial Pemula - NewBie

MEMBUAT FORM EDIT DAN HAPUS DATA MENGGUNAKAN PHP

Tutorial membuat form edit merupakan terusan dari tutorial sebelumnya yaitu membuat form input data. Sekarang anda akan membuat form untuk menampilkan data dan mengedit kembali data tersebut. Hampir sama dengan form input, namun setiap form sudah terisi data yang ada pada tabel di database. Jadi data yang ada di tabel akan muncul di dalm form tersebut dan user dapat mengedit serta menyimpannya kembali. Setelah membuat form edit berhasil, maka anda akan membuat script untuk menghapus data dengan klik tombol hapus maka data di database akan terhapus.

Ikuti cara membuat form edit data produk dan hapus data menggunakan php

Pertama, buat file baru beri nama edit.php simpan di folder latihan

Script edit.php

<?php
error_reporting(0); //abaikan error pada browser
//panggil file koneksi.php yang sudah anda buat
include "koneksi.php";
?>
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
       <title>JUDUL WEBSITE ANDA</title>
</head>
<body>
<h1 align="center"> Edit Produk</h1>
<?php
//ambil data berdasarkan parameter GET id
$b = mysqli_fetch_array(mysqli_query($conect, "SELECT * FROM tb_produk where id_produk='$_GET[id]'"));

//buat variabel dari setiap field name form produk
$nama= mysqli_real_escape_string($conect, $_POST['nama']);    //varibel field nama
$stok= mysqli_real_escape_string($conect, $_POST['stok']);    //varibel field stok
$deskripsi= mysqli_real_escape_string($conect, $_POST['deskripsi']);  //varibel field deskripsi
$harga= mysqli_real_escape_string($conect, $_POST['harga']);        //varibel field harga
$kategori= mysqli_real_escape_string($conect, $_POST['kategori']);  //varibel field kategori
$berat= mysqli_real_escape_string($conect, $_POST['berat']);       //varibel field berat
$diskon= mysqli_real_escape_string($conect, $_POST['diskon']);     //varibel field diskon

if(isset($_POST['simpan'])){
 if(empty($nama)){    //jika nama kosong maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Nama Produk</p>";
    }
    elseif(empty($kategori)){ //jika kategori kosong maka muncul pesan
        $error="<p style='color:#F00;'>* Pilih Kategori Produk</p>";
    }
    elseif(empty($deskripsi)){  //jika deskripsi kosong maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Deskripsi Produk</p>";
    }
    elseif(strlen($deskripsi) < 10){  //jika deskripsi kosong maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Deskripsi Produk minimal 10 karakter</p>";
    }
    elseif(empty($stok)){   //jika Stok kosong maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Stok Produk</p>";
    }
    elseif(!is_numeric($stok)){   //jika Stok Bukan angka maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Jumlah Stok Dengan Angka</p>";
    }
    elseif(empty($berat)){   //jika berat produk kosong maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Berat Produk dalam satuan gram</p>";
    }
    elseif(!is_numeric($berat)){  //jika berat bukan angka maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Berat Produk Dengan Angka</p>";
    }
    elseif(empty($harga)){ //jika harga kosong maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Harga Produk</p>";
    }
    elseif(!is_numeric($berat)){  //jika harga bukan angka maka muncul pesan
        $error="<p style='color:#F00;'>* Masukan Harga Produk Dengan Angka</p>";
    }
    else{  //jika semua sudah terpenuhi maka update ke tb_produk

    $save=mysqli_query($conect, "UPDATE tb_produk set nama_produk='$nama',stok_produk='$stok',deskripsi_produk='$deskripsi',harga_produk='$harga',id_kategori='$kategori',berat_produk='$berat',diskon_produk='$diskon' where id_produk='$_GET[id]'");
    if($save){ //jika update berhasil maka muncul pesan dan menuju ke halaman produk
        echo "<script>alert('Data Produk Berhasil disimpan ke database');document.location='produk.php'</script>";
    }else{  //jika update gagal maka muncul pesan
         echo "<script>alert('Proses simpan gagal, coba kembali');document.location='input.php'</script>";
    }
}
}
?>
<form action="" method="post" enctype="multipart/form-data">
    <table border="0" cellspacing="10" width="800" align="center">
    <tbody>
    <tr><td colspan="3"><?php echo $error;?></td></tr>
    <tr>
        <td>Nama Produk</td>
        <td>:</td>
        <td><input type="text" name="nama" placeholder="Nama Produk" size="50" maxlength="30" autocomplete="off" autofocus value="<?php echo $b['nama_produk'];?>"/>
        </td>
    </tr>
    <tr>
        <td>Kategori Produk</td>
        <td>:</td>
        <td>
            <select name="kategori">
            <option value="">Pilih Kategori</option>
            <?php
            $ambildata = mysqli_query($conect, "SELECT * FROM tb_kategori");  //ambil data dari tabel kategori
            while($a=mysqli_fetch_array($ambildata)){   //buat perulangan
                if($a['id_kategori'] == $b['id_kategori']){  //jika id kategori sama dengan id kategori dari variabel $b, maka option selected
                ?>
                  <option value="<?php echo $a['id_kategori'];?>" selected>
                  <?php echo $a['nama_kategori'];?></option>
            <?php
            }else{   //jika tidak sama maka option tidak selected
                ?>
                <option value="<?php echo $a['id_kategori'];?>">
                <?php echo $a['nama_kategori'];?></option>
            <?php
                 }
            }
            ?>
            </select>
        </td>
    </tr>
    <tr>
        <td>Deskripsi Produk</td>
        <td>:</td>
        <td><textarea name="deskripsi" placeholder="Deskrippsi Produk" rows="3" cols="50"/><?php echo $b['deskripsi_produk'];?></textarea></td>
    </tr>
    <tr>
        <td>Stok Produk</td>
        <td>:</td>
        <td><input type="text" name="stok" placeholder="Stok Produk" size="20" maxlength="10" value="<?php echo $b['stok_produk'];?>"/></td>
    </tr>
    <tr>
        <td>Berat Produk</td>
        <td>:</td>
        <td><input type="text" name="berat" placeholder="Berat Produk" size="30" maxlength="30" value="<?php echo $b['berat_produk'];?>"/></td>
    </tr>
    <tr>
        <td>Harga Produk</td>
        <td>:</td>
        <td><input type="text" name="harga" placeholder="Harga Produk" size="30" maxlength="30" value="<?php echo $b['harga_produk'];?>"/></td>
    </tr>
    <tr>
        <td>Diskon Produk</td>
        <td>:</td>
        <td><input type="text" name="diskon" placeholder="Diskon Produk" size="30" maxlength="10" value="<?php echo $b['diskon_produk'];?>"/></td>
    </tr>
    <tr>
        <td colspan="3"><button type="submit" name="simpan">Proses Data</button</td>
    </tr>
</tbody>

</table>
</form>

</body>
</html>

 

Jika anda ingin mengerti cara mengedit form input supaya jadi form edit silahkan lihat web yah...

Karna tak semuanya bisa dijelasin dengan kata-kata...he

Setelah anda membuat form edit, sekarang anda buka kembali file produk.php

Ganti script produk.php menjadi seperti ini, sebelum mengganti silahkan pahami perbedaannya yah, atau anda bisa melihat video saya

<?php
//panggil file koneksi.php yang sudah anda buat
include "koneksi.php";
?>
<!doctype html public "-//W3C//DTD HTML 4.0 //EN">
<html>
<head>
       <title>JUDUL WEBSITE ANDA</title>
</head>
<body>
<h1 align="center"> Daftar Produk</h1>
    <table border="1" width="900" align="center">
       <thead>
       <tr>
           <td colspan="9"><a href="input.php" title="input data">Tambah Produk</a></td>
       </tr>
       <tr>
           <th>ID Produk</th>
           <th>Nama Produk</th>
           <th>Kategori Produk</th>
           <th>Deskripsi</th>
           <th>Stok</th>
           <th>Berat</th>
           <th>Harga</th>
           <th>Diskon</th>
           <th>Action</th>
       </tr>
       </thead>

       <tbody>
<?php
//ambil data dari tb_produk dan tb_kategori  di database
$ambildata=mysqli_query($conect, "SELECT * FROM tb_produk, tb_kategori where tb_produk.id_kategori=tb_kategori.id_kategori order by id_produk desc");
while($a=mysqli_fetch_array($ambildata)){
    ?>
       <tr>
           <td><?php echo $a['id_produk'];?></td>
           <td><?php echo $a['nama_produk'];?></td>
           <td><?php echo $a['nama_kategori'];?></td>
           <td><?php echo $a['deskripsi_produk'];?></td>
           <td><?php echo $a['stok_produk'];?></td>
           <td><?php echo $a['berat_produk'];?>(gr)</td>
           <td>Rp. <?php echo $a['harga_produk'];?></td>
           <td><?php echo $a['diskon_produk'];?>%</td>
           <td><a href="edit.php?id=<?php echo $a['id_produk'];?>" title="edit data"><button>Edit</button></a> |
           <a href="hapus.php?id=<?php echo $a['id_produk'];?>" title="edit data"><button>Hapus</button></a></td>
       </tr>
<?php
}
?>
</tbody>

</table>
<p align="center">Menampilkan data produk dan data kategori dari database, tabel produk ber relasi dengan tabel kategori dengan id_kategori yang terdapat pada tabel produk, <br>Maka dat dapat di tampilakn bersamaan</p>
</body>
</html>

Jalankan dulu file produk.php, maka hasilnya kan muncul tombol hapus, edit dan link untuk tambah produk.

Seperti ini

produk

Untuk menguji form edit, silahkan klik tombol edit pada setiap baris yang terdapat tombol edit.

Maka akan muncul form seperti ini

form edit

Oke, form edit sudah berhasil anda buat, sekarang anda akan membuat script untuk menghapus data.

Kedua, buat file baru beri nama hapus.php

Ketikkan script berikut

<?php
//panggil file koneksi.php yang sudah anda buat
include "koneksi.php";

$id=$_GET['id'];   //ambil parameter GET id  dan buat variabel
//gunakan parameter get untuk menghapus data berdasarkan id produk
$hapus = mysqli_query($conect, "DELETE FROM tb_produk where id_produk='$id'");
if($hapus){ //jika berhasil
    echo "<script>alert('Data Berhasil Di Hapus');document.location='produk.php'</script>";
}else{  //jika gagal
    echo "<script>alert('Data Gagal Di Hapus, Coba ulangi lagi');document.location='produk.php'</script>";
}
?>

 

Untuk mengujinya silahkan klik tombol hapus disetiap baris.

Maka akan menghapus data dan menampilkan pesan data berhasil dihapus dan meunju ke halaman produk kembali.

Terimakasih, selamat mencoba

 

Preview Demo

Develindo Web | Tutorial Pemrograman Website