Kegagalan Fungsi Simpan Gambar Sebelumnya Pada CMS RIMI
Meskipun sudah diperbaiki ternyata sebenarnya masih ada masalah pada update cms rimi versi 1.2, mungkin masalah ini tidak terlihat karena memang tidak ada error yang ditampilkan, namun jika diteliti lagi ternyata dari 2 kondisi yang coba saya penuhi dalam proses menyimpan gambar sebelumnya, kondisi pertama tidak berjalan sesuai dengan harapan. Perhatikan potongan script php di bawah ini
Gambar 1.1 : Potongan skrip untuk fungsi eksekusi update data. Diambil dari root93 |
Baca juga : Update CMS RIMI 1.2 : Perbaikan Bugs Update dan Penambahan fungsi simpan gambar sebelumnya
Kondisi pertama mengeksekusi dan menyimpan gambar sebelumnya, dan kondisi eksekusi kedua adalah menyimpan gambar baru jika ada.
Kondisi pertama sebenarnya mengalami kegagalan fungsi, saat kalian mengupdate judul atau isi berita, data yang kalian update (judul atau isi berita) tidak ikut tersimpan, dan data lainnya juga tidak ikut tersimpan, meskipun cms rimi tidak mengelami error dan nilai yang dikembalikan adalah nilai true tapi kondisi pertama memang sama sekali tidak mengalami perubahan saat di update
Sedangkan pada kondisi kedua sistem sudah berjalan sesuai dengan keinginan.
Setelah dicek akhirnya saya menemukan sebuah kesimpulan bahwa kegagalan eksekusi pada kondisi pertama dikarena fungsi detail_berita(); yang dipanggil pada halaman bagian proses edit-berita.php , fungsi tersebut memanggil global variabel – variabel komponen berita yang akibatnya saat diproses global – global variabel tersebut mereplace nilai – nilai update yang dikirim, sehingga nilainya akan menjadi kosong. Perhatikan potongan script berikut
gambar 1.2 : Potongan script edit-berita.php. Diambil dari root93 |
Potongan skrip diatas,Ketika memanggil fungsi detail_berita, maka secara otomatis akan dipanggil global $id, $judul_berita, $isi_berita, $penulis_berita, $gambar_berita, $tanggal_berita; yang memiliki nilai sebelumnya, alhasil pada saat proses update terjadi maka nilainya akan di isi oleh nilai pada variabel – variabel sebelumnya, artinya akan mereplace nilai pada $_POST yang disimpan pada variabel dengan nama yang sama dan tentu saja jika itu terjadi, maka kondisi eksekusi pertama tidak akan menyimpan perubahan pada judul, isi ataupun kategori berita meskipun kita edit/rubah sebelum disimpan. Untuk mengatas masalah ini, kita bisa menambahkan function berikut ini
function detail_berita_img($var_id){
global $var_item, $gambar_berita;
$sql = "SELECT id, gambar_berita FROM tabel_berita WHERE id = ?";
if($stmt = prepare($sql)){
mysqli_stmt_bind_param($stmt, "i", $param_id);
$param_id = $var_id;
if(execute($stmt)){
store_result($stmt);
mysqli_stmt_bind_result($stmt, $var_item, $gambar_berita);
mysqli_stmt_fetch($stmt);
if(num_rows_2($stmt) == 1){
return true;
}else{
return false;
}
}else{
echo "Terjadi kesalahan. Coba lagi nanti";
}
}
stmt_close($stmt);
}
Pada function diatas sebenarnya, kita hanya ingin mengakses nilai yang tersimpan pada kolom tabel gambar berita dengan tujuan supaya nilai tersebut bisa disimpan sebagai nilai gambar sebelumnya.
Selanjutnya kalian bisa mengganti pemanggilan fungsi detail_berita pada line 86 pada gambar diatas dengan detail_berita_img();
Kodenya itu lo, kok ya pakai simbol dolar ,sesekali rupiah siapa tahu tidak gagal :)
ReplyDeleteDemikianlah artikel mumpuni yang menyoal dari kegagalan dari cms rimi versi 1.2
ReplyDeleteDengan demikian maka mari kita periksa segala hal yang berhubungan dengan kegagalan cms rimi versi 1.2
oke broh... lengkapnya silahkan klik twitter sayah