Jumat, 20 Maret 2020

Tutorial Php : Meniadakan Foto Yang Di Encode Base64

mengenkripsi/encode foto menggunakan base64 maka dalam panduan ini saya akan menawarkan bagaimanacara meniadakan foto yang disimpan dengan encode base64.

Dalam contoh masalah ini, pasti gambar/foto yang anda encode menggunakan base64 tidak bisa dihapus begitu saja pada server melalui kombinasi query menurut nama file yang terencode, jikalau anda tidak yakin silahkan coba saja menggunakan parameter mirip misal unlik.

Untuk menghapus foto yang diencode menggunakan base64 ini sebernernya aku lebih kesengsem untuk memakai ‘jalan mudah’ dibandingkan harus melakukan sistem decode atau semacanya. Dengan cara menyimpan nama file gambar/foto yang tanpa enkripsi/encode. Dan bahu-membahu hingga kita telah mendapatkan solusi termudah.


Selanjutnya kita buat suatu fungsi untuk meng-get data gambar berdasarkan id datanya, maksudnya tentu untuk menggunakannya pada halaman delete dan memanggil file foto/gambar tanpa encode untuk dihapus. Jadi ada dua fungsi yang perlu ditambakan ke script sebelumnya ialah fungsi delete data yang berada di databasenya dan fungsi untuk melaksanakan get data sebelumnya data foto di unlink

Berikut fungsi yang mampu Anda tambahkan
 public function getImage_delete($data)  try  $sql = "DELETE FROM foto WHERE id=:id"; $stmt = $this->koneksi->prepare($sql); $stmt->execute(array(":id"=>$data)); return true;  catch(PDOException $e)  return false;    public function getImage_data($data)  try  $sql = "SELECT id, name, image FROM foto WHERE id=:id"; $stmt = $this->koneksi->prepare($sql); $stmt->bindParam(":id", $data); $stmt->execute(); $stmt->bindColumn(1, $this->id); $stmt->bindColumn(2, $this->name); $stmt->bindColumn(3, $this->image); $stmt->fetch(PDO::FETCH_ASSOC); if($stmt->rowCount()==1)  return true;    catch(PDOException $e)   return false;    
Buat suatu halaman untuk melaksanakan proses data dan unlink. Pertama data foto di unlink terlebih dahulu lalu kemudian jikalau sukses kerjakan delete data yang berada dalam database. Anda mampu menjadikannya mirip berikut :
 getImage_data($_GET['id'])) echo "Data tidak ditemukan";   ?> name)): if($obj->getImage_delete($obj->id)): echo "Gambar berhasil dihapus"; else: echo "Gambar gagal dihapus"; endif; else: echo "Gambar pada server gagal dihapus"; endif;    ?>    Delete Foto Base64   
Pada halaman index atau halaman upload, Anda bisa menambhakan parameter id untuk proses get data yang diharapkan oleh halaman delete, sehingga nanti Anda mampu membuatnya mirip berikut ini :
     getImage2('image');  if(!$obj->fileExtension($obj->file_extension, $obj->file_valid)): array_push($error, "Maaf ektensi file salah"); elseif($obj->fileSize($obj->file_size)): array_push($error,"Maaf file terlalu besar");  endif;   /* With no rename new image if(count($error)==0): if(move_uploaded_file($obj->file_tmp, $obj->file_target)): if($obj->insertImage($obj->file_name, $obj->image)): echo "Gambar berhasil di upload"; else: echo "Gambar gagal di upload"; endif; else: echo "Gagal mengunggah gambar"; endif; endif; */ if(count($error)==0): if(move_uploaded_file($obj->file_tmp,$obj->file_dir.$obj->file_item)): if($obj->insertImage($obj->file_item, $obj->image)): echo "Gambar berhasil di upload"; else: echo "Gambar gagal di upload"; endif; else: echo "Gagal mengunggah gambar"; endif; endif;       $obj->getError($error);  ?>    Upload   
imageFetch(); $no=1; while($row=$data->fetch(PDO::FETCH_ASSOC)) ?> closeCursor();?>
NO FOTO DB FOTO BASE64 AKSI
Hapus



Kesimpulan

  1. Buat suatu desain database/tabel dengan dua jenis tipe kolom foto yang terencode dan yang tidak
  2. Saat akan menyertakan parameter unlik, Anda tinggal memasukan nama file foto tanpa encode kedalamnya
  3. Jadi saat memperlihatkan gambar gunakan file yang terencode tetapi dikala menghapusnya panggil file yang tidak terencode

Sumber https://root93.blogspot.com


EmoticonEmoticon