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. 
Tutorial Part #5 : Delete, Menghapus data PHP dan Mysql
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