Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memasukkan Data Binari (Blob) dengan Selamat ke MySQL Menggunakan PHP?

Bagaimana untuk Memasukkan Data Binari (Blob) dengan Selamat ke MySQL Menggunakan PHP?

Linda Hamilton
Lepaskan: 2024-12-15 05:13:11
asal
802 orang telah melayarinya

How to Safely Insert Binary Data (Blobs) into MySQL Using PHP?

Memasukkan Gumpalan ke dalam Pangkalan Data MySQL dengan PHP

Untuk menyimpan data binari dengan cekap, seperti imej, dalam pangkalan data MySQL menggunakan PHP, adalah penting untuk elakkan perangkap biasa.

Perangkap: Percubaan untuk memasukkan hasil panggilan fungsi terus ke dalam pertanyaan MySQL.

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

Penyelesaian 1: Gabungkan hasil panggilan fungsi secara eksplisit.

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

Perangkap: Gagal membersihkan data binari sebelum memasukkannya ke dalam a pertanyaan.

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

Penyelesaian 2: Melarikan diri daripada data binari menggunakan mysql_escape_string.

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

Pitfall: Menyimpan data binari yang besar terus dalam pangkalan data boleh mengembang pangkalan data.

Penyelesaian 3: Pertimbangkan kaedah storan alternatif untuk data binari, seperti sistem storan fail.

Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Data Binari (Blob) dengan Selamat ke MySQL Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan