-->

AK Studio

Tutorial Programming Bahasa Indonesia

Tutorual CRUD PHP Part #4 : Update mengubah data PHP dan Mysql

Tutorial CRUD PHP Part #4 : Update Mengubah data PHP Mysql

pada Tutorial part #3 kita telah menyelesaikan Module Read , atau menampilkan data yangbtelah di simoan dalam tabel database Pada PHP dan Mysql. 

selanjutnya pada tutorial part #4 ini kita akan Melanjutkan Module CRUD PHP dan Mysql , yaitu Module Update atau Ubah, module ini digunakan untuk mengubah atau memperbaharui data yang telah di simpan di dalam database, ketika terjadi  kesalahan atau pun perubahan pada data yang telah kita simpan. 

langsung saja ke tutorial nya. 

1.Buat Model update_data.php
untuk menanngani proses perubahan data kita juga perlu membuat sebuah model untuk melakukan proses perubahan data, yang mana pada model ini, akan menggunakan Id atau kode barang, yang kita update data nya. 
buat sebuah file baru dalam folder model dan beri nama update_produk.php, dan tuliskan koding berikut ini. 

Coding Model update_produk.php
    <?php
    require_once './config/database.php';

    $id = $_GET['id'];

    $target_dir = "./img-produk/";

    //query get data by ID
    $query = "select * from tblbarang where k01cKodebarang_v50 = '$id'";
    $result = mysqli_query($koneksi, $query);

    //menampilkan detail produk 
    while ($row = mysqli_fetch_array($result)) {
        $prmk01cKodebarang_v50 = $row['k01cKodebarang_v50']; // variabel data yang akan di update 
        $prmf01cNamabarang_v50 = $row['f01cNamabarang_v50'];
        $prmf02cSatuan_v50 = $row['f02cSatuan_v50'];
        $prmf03nStock_int = $row['f03nStock_int'];
        $prmf04nHargaBarang_n92 = $row['f04nHargaBarang_n92'];
        $prmf05cNamaGamabar_v100  = $row['f05cNamaGamabar_v100']; // untuk menampung gamabar yg lama
    }


    if (isset($_POST['update-produk'])) {

        //varibel data post
        $k01cKodebarang_v50 = $_POST['k01cKodebarang_v50'];
        $f01cNamabarang_v50 = $_POST['f01cNamabarang_v50'];
        $f02cSatuan_v50 = $_POST['f02cSatuan_v50'];
        $f03nStock_int = $_POST['f03nStock_int'];
        $f04nHargaBarang_n92 = $_POST['f04nHargaBarang_n92'];


        // proses data gambar 
        $filename = $_FILES["f05cNamaGamabar_v100"]["name"]; //nama file input
        $tempname = $_FILES["f05cNamaGamabar_v100"]["tmp_name"]; // file from pacthnya
        $file_exts = pathinfo($filename, PATHINFO_EXTENSION);
        $endcript_Name = md5(uniqid(rand(), true)) . "." . $file_exts; // encripsi file name. format file
        $folder = $target_dir . $endcript_Name;

        // set nama file gambar nya
        if (empty($_FILES["f05cNamaGamabar_v100"]["name"])) {
            // jika ada Tidak ada Gamabar
            $f05cNamaGamabar_v100 =  $prmf05cNamaGamabar_v100; // pakai gambar lama
        } else {
            // jika ada gambar
            $f05cNamaGamabar_v100 =  $endcript_Name;
        }

        // query string
        $query_update = " Update tblbarang set f01cNamabarang_v50 = '$f01cNamabarang_v50',
                                                f02cSatuan_v50= '$f02cSatuan_v50',
                                                f03nStock_int ='$f03nStock_int',
                                                f04nHargaBarang_n92 ='$f04nHargaBarang_n92',
                                                f05cNamaGamabar_v100 = '$f05cNamaGamabar_v100'
                                    where k01cKodebarang_v50 = '$k01cKodebarang_v50'";


        // cek ada gambar atau tidak
        if (empty($_FILES["f05cNamaGamabar_v100"]["name"])) { //jika tidak ada gambar

            //perintah jalankan query update
            $update_data = mysqli_query($koneksi, $query_update);
            if ($update_data) {
                $status = 'berhasil';
                $msg = "Data Berhasil Di Update...";
           } else {
                $status = 'error';
                $msg = "Data Gagal Di Update...";
            }
        } else { // jika ada gambar hapus dulu gambar lama

            // hapus gambar lama unlink(pactnya);
            $image_old = $target_dir . $prmf05cNamaGamabar_v100;
            if (unlink($image_old)) { // gambar lama


                if (move_uploaded_file($tempname, $folder)) { // upload gambar baru
                    //perintah jalankan query update
                    $update_data = mysqli_query($koneksi, $query_update);
                    if ($update_data) {
                        $status = 'berhasil';
                        $msg = "Data Berhasil Di Update...";
                    } else {
                        $status = 'error';
                        $msg = "Data Gagal Di Update...";
                    }
                } else {
                    $status = 'error';
                    $msg = "Gagal Upload Gambar Baru...";
                }
            } else {
                $status = 'error';
                $msg = "Gagal Hapus Gambar Lama...";
            }
        }

        header("Location: ./index.php?pages=list-produk&status=$status&pesan=$msg");
    }

penjelasan coding:
  • line 2 : Pemanggilan koneksi database
  • line 4 : Varibael untuk get id 
  • line 6 : pacth folder penyimpanan gambar produk
  • line 9-10 : query untuk mencari data berdasarkan data id yang di kirim
  • line 13-20 : looping data hasil query untuk di tampilkan pada form update data
  • line 23 : filter methods post jika update data
  • line 26-30 : variabet post untuk menerima data dari from update data
  • line 34-38 : fungsi proses gambar
  • line 41-47 : filter untuk nama gambar jika ada gambar baru yang akan di update maka nama gambar memakai nama gambar baru yang telah di enkripsi, jika tidak maka memkau nama gambar yang lama.
  • line 50-55 : query Update data produk
  • line 59-95 : perintah filter fungsi update data 
  • line 97 : redirect halaman dan mengirim pesan ke halaman list produk

2.Membuat Route baru
salanjut nya kita perlu menambahkan route baru untuk menampilkan data yang akan kita update, route ini akan mengerahkan kita kehakaman update data. 

karena route ini akan meringrim data id berupa kode barang maka kita tidak perlu menambahkan tag menu baru, karna route update-produk akan di gunakan pada button update yang terdapat pada tabel di halaman list data yang menampilkan semua data produk. buka file route dan tambahkan route baru

koding route.php
<?php

    if (isset($_GET['pages'])) {
        $view = $_GET['pages'];

        switch ($view) {
            case 'home':
                include('./View/page/Home.php');
                break;
            case 'add-produk':
                include('./View/Add_produk.php');
                break;
            case 'list-produk':
                include('./View/list_produk.php');
                break;
            case 'update-produk':
                include('./View/Update_produk.php');
                break;
            default:
                echo "Maaf... Halaman Tidak DI temukan";
                break;
        }
    } else {
        include('./View/page/Home.php');
    }

penjelasan coding :
  • line 16-18 : menambahkan route untuk menampilkan halaman update data

3.Mengirim Nilai Id pada Model
dari mana kita bisa menerima id atau kode barang yang akan kita update dan mengirim id tersebut kedalam model update_produk.php

pada tutorial sebelumnya  di tutorial part 3 menampilkan data PHP dan Mysql. 
di dalam tabel pada kolom option kita menambahkan dua buah button ya itu button edit dan button delete

button Update
koding button update
<a class="btn btn-info" href="index.php?pages=update-produk&id=<?= $data_produk['k01cKodebarang_v50']; ?>">Edit</a>/code>
jadi setelah proses looping data selesai maka, setiap button tersebut telah mimiliki id sesuai dengan urutan data yang ditampilkan. 

ketika button update di klik maka, button akan memanggil route update barang lalu menampilkan form update produk dan mengirim id yang berisi kode barang ke dalam model update_produk. php

4.Membuat View Form Update
setelah selesai membuat model dan mengirim id atau kode barang yang akan di update, maka dalam model update produk ini akan mencari data yang sesuai dengan id yang telah di kirim kedalam modelnya. 

kemudian data ini akan kita tampilkan ke halaman atau form update produk. buat sebuah file baru dalam folder view dan beri nama update_produk.php, dan tulisakan koding berikut ini. 

Koding form update_produk.php
<?php require_once './Model/update_produk.php' ?>
    <div class="container">

        <div class="card">
            <div class="card-body">
                <h4 class="card-title">Update Produk</h4>
                <form method="POST" enctype="multipart/form-data">
                    <div class="row">
                        <div class="col-sm-6">
                            <div class="form-group">
                                <label for="kodebarang">Kode Barang</label>
                                <input type="text" id="k01cKodebarang_v50" name="k01cKodebarang_v50" class="form-control" value="<?= $prmk01cKodebarang_v50; ?>" placeholder="Kode barang" readonly>
                            </div>
                            <div class="form-group">
                                <label for="f01cNamabarang_v50">Nama Barang</label>
                                <input type="text" class="form-control" id="f01cNamabarang_v50" name="f01cNamabarang_v50" value="<?= $prmf01cNamabarang_v50; ?>" placeholder="Nama Barang">
                            </div>
                            <div class="form-group">
                                <label for="f02cSatuan_v50">Satuan</label>
                                <input type="text" class="form-control" id="f02cSatuan_v50" name="f02cSatuan_v50" value="<?= $prmf02cSatuan_v50; ?>" placeholder="Satuan Barang">
                            </div>
                            <div class="form-group">
                                <label for="f03nStock_int">Stock</label>
                                <input type="number" class="form-control" id="f03nStock_int" name="f03nStock_int" value="<?= $prmf03nStock_int; ?>" placeholder="Stock Barang">
                            </div>
                            <div class="form-group">
                                <label for="f04nHargaBarang_n92">Harga</label>
                                <input type="number" class="form-control" id="f04nHargaBarang_n92" name="f04nHargaBarang_n92" value="<?= $prmf04nHargaBarang_n92; ?>" placeholder="Harga Barang">
                            </div>
                        </div>
                        <div class="col-sm-6">
                            <div class="form-group">
                                <label for="f05cNamaGamabar_v100">Gambar produk</label>
                                <div class="input-group">
                                    <div class="custom-file">
                                        <input id="file_img" type="file" name="f05cNamaGamabar_v100">
                                        <img id="img_preview" class="rounded mx-auto d-block" src="./img-produk/<?= $prmf05cNamaGamabar_v100; ?>">
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="form-group">
                        <br>
                        <button type="submit" class="btn btn-primary" name="update-produk">Update</button>
                        <a type="button" class="btn btn-warning" href="index.php?pages=list-produk">kemabali</a>
                    </div>
                </form>
            </div>
        </div>


    </div>

    <script type="text/javascript">
        $("#file_img").change(function() {
            readURL(this);
        });

        function readURL(input) {
            if (input.files && input.files[0]) {
                var reader = new FileReader();
                reader.onload = function(e) {
                    $('#img_preview').attr('src', e.target.result);
                }
                reader.readAsDataURL(input.files[0]);
            }
        }
    </script>

penjelasan coding :
  • line 1 : pemanggilan model update produk
  • pada setiap input text nya untuk menampilkan data yang akan di update menggunakan value="<?= $prmf03nStock_int; ?>" yang mana variabel ini di dapat dari hasil loopdata di model update.
  • line 55-69 : fungsi javascript untuk menampilkan gambar yang akan di pilih ketika tag input gambar di pilih gambar baru

setelah selesai simpan dan jalakan project nya.  jika tidak terjadi kesalahan pada. step-step di atas maka hasil nya akan seperti. berikut ini

from Update Data


Demo Update Data


sampai disini kita telah berhasil menyelesaikan Tutorial part 4 Update data pada PHP dan mysql. dan kita juga telah menyelesaikan Module Update atau ubah dari Module CRUD PHP Dan Mysql. 

Pada Tutorial selanjutnya kit akan memasuki Modul yang terakhir dari Module CRUD PHP Dan Mysql, yaitu Module Delete atau menghapus data pada database Mysql. untuk Tutorial nyamdapat di. bacapada link. berikut. 


Jika ada pertanyaan, masukan dan saran mengenai postingan ini bisa berikan di kolom Komentar..
Sekian Dan Terima kasih...

#Happy Coding

Incoming search terms:
  • Belajar PHP dan Mysql
  • Tutorial Bahasa Pemrograman PHP
  • Tutorial PHP dan Mysql Bahasa Indonesia
  • Tutorial Belajar PHP dan Mysql 
  • CRUD PHP MySql
  • CRUD Mysql database dan PHP
  • CRUD PHP dengan database  Mysql
  • Menampilkan data Php MySql
  • Update data Php dan MySql
  • Update Data Mysql Php
  • Edit Data php mysql
  • Insert data Php dan MySql
  • Menampilkan Gambar dari database Php mysql
  • menampilkan gambar php

Tags: Belajar PHP dan Mysql,Tutorial Bahasa Pemrograman PHP, trading, Tutorial PHP dan Mysql Bahas Indonesia ,Tutorial Belajar PHP dan Mysql,crypto currentsi, membuat web dinamis di PHP, investasi,CRUD PHP MySql,CRUD Mysql database dan PHP, CRUD PHP dengan database  Mysql,create data php mysql, forex, Upload file php, input data php dan mysql, investasi saham, upload gambar php , saham online, creat data in phpMenampilkan data Php MySql,Read data Php dan MySql, Read Data Mysql Php,Insert data Php dan MySql,Menampilkan Gambar dari database Php mysql,menampilkan gambar php

0 Response to "Tutorual CRUD PHP Part #4 : Update mengubah data PHP dan Mysql"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel