Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memaparkan BLOB Imej dengan betul dari MySQL dalam PHP?

Bagaimana untuk Memaparkan BLOB Imej dengan betul dari MySQL dalam PHP?

Barbara Streisand
Barbara Streisandasal
2024-12-14 12:47:14601semak imbas

How to Correctly Display Image BLOBs from MySQL in PHP?

PHP Paparan Imej BLOB daripada MySQL

Apabila cuba memaparkan imej yang disimpan dalam lajur MySQL BLOB, sesetengah pengguna menghadapi isu di mana Chrome atau IE memaparkan ikon imej dan bukannya imej sebenar. Ini mungkin disebabkan oleh kekurangan pengekodan yang betul dan pengendalian data imej binari.

Penyelesaian

Cara yang betul untuk memaparkan BLOB imej dalam PHP melibatkan:

  • Menyediakan Data:

    • Dapatkan semula data imej daripada pangkalan data MySQL menggunakan pertanyaan (cth., SELECT * FROM products WHERE id = ?).
    • Simpan data imej yang diambil dalam pembolehubah (cth., $image).
  • Pengekodan Data Perduaan:

    • Gunakan fungsi base64_encode() untuk menukar imej binari data ke dalam rentetan berkod base64. Langkah ini diperlukan untuk mengekod data binari ke dalam format yang sesuai untuk dipaparkan sebagai imej.
  • Memaparkan Imej:

    • Tetapkan pengepala HTTP yang sesuai untuk menentukan jenis imej (cth., imej/jpeg).
    • Output data imej berkod base64 sebagai sumber imej. Contohnya:
    header("Content-Type: image/jpeg");
    echo '<img src="data:image/jpeg;base64,' . base64_encode($image) . '" />';

Nota: Pastikan data imej yang diambil daripada pangkalan data adalah sah dan tiada aksara ruang kosong tertinggal sebelum atau selepas tanda nama.

Atas ialah kandungan terperinci Bagaimana untuk Memaparkan BLOB Imej dengan betul dari MySQL dalam 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