Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menyimpan Imej (Blobs) dengan Betul dalam MySQL Menggunakan PHP?

Bagaimana untuk Menyimpan Imej (Blobs) dengan Betul dalam MySQL Menggunakan PHP?

Linda Hamilton
Linda Hamiltonasal
2024-11-30 13:47:11985semak imbas

How to Properly Store Images (Blobs) in MySQL Using PHP?

Menyimpan Gumpalan dalam Pangkalan Data MySQL Menggunakan PHP

Apabila cuba menyimpan imej dalam pangkalan data MySQL, anda mungkin menghadapi masalah jika pertanyaan anda gagal memasukkan imej. Artikel ini akan memberikan penyelesaian kepada masalah ini.

Masalah:

Dalam pertanyaan berikut, file_get_contents($tmp_image) dianggap sebagai rentetan dan bukannya panggilan fungsi:

$sql = "INSERT INTO ImageStore(ImageId,Image) 
VALUES('$this->image_id','file_get_contents($tmp_image)')";

Penyelesaian 1:

Lompat keluar dari rentetan dan lakukan penggabungan eksplisit:

$sql = "INSERT INTO ImageStore(ImageId,Image) 
VALUES('$this->image_id','" . file_get_contents($tmp_image) . "')";

Penyelesaian 2:

Escape data binari untuk mengelakkan pertanyaan tidak sah:

$sql = "INSERT INTO ImageStore(ImageId,Image) 
VALUES('$this->image_id','" . mysql_escape_string(file_get_contents($tmp_image)) . "')";

Penyelesaian 3:

Meminimumkan saiz pangkalan data dengan menyimpan imej dalam sistem fail atau dengan menggunakan perkhidmatan storan awan.

Atas ialah kandungan terperinci Bagaimana untuk Menyimpan Imej (Blobs) dengan Betul dalam MySQL Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn