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