Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Memaparkan Imej yang Disimpan sebagai BLOB dalam MySQL?
Memaparkan Imej daripada Lajur MySQL BLOB
Dalam usaha anda untuk memaparkan imej yang disimpan sebagai data BLOB dalam pangkalan data MySQL, anda telah menemui isu mempersembahkan data binari sebagai imej sebenar. Mari kita mendalami penyelesaiannya.
Penyelesaian 1: Pengekodan Inline Base64
Jika anda berurusan dengan sejumlah kecil imej, anda boleh mengekodnya menggunakan base64. Pendekatan ini menukar data binari kepada rentetan padat yang boleh dibenamkan terus ke dalam HTML anda:
echo '<dt><strong>Technician Image:</strong></dt><dd>' . '<img src="data:image/jpeg;base64,' . base64_encode($row2['image']) . '" width="290" height="290">' . "</dd>";
Penyelesaian 2: Fail Proksi PHP
Pendekatan yang lebih cekap untuk banyak imej adalah untuk mencipta fail proksi PHP yang mengambil semula imej daripada pangkalan data berdasarkan ID parameter:
<img src="image.php?id=<?php echo $image_id; ?>" />
<?php $id = (isset($_GET['id']) && is_numeric($_GET['id'])) ? intval($_GET['id']) : 0; $image = getImageFromDatabase($id); header('Content-Type: image/jpeg'); echo $image; ?>
Nota: Untuk melaksanakan penyelesaian ini dengan betul, pastikan jenis MIME fail imej ditetapkan kepada imej/jpeg dalam konfigurasi pelayan anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memaparkan Imej yang Disimpan sebagai BLOB dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!