顯示來自MySQL BLOB 列的映像
在尋求顯示在MySQL 資料庫中儲存為BLOB 資料的映像時,您遇到過將二進位資料呈現為實際影像的問題。讓我們深入研究解決方案。
解決方案 1:內聯 Base64 編碼
如果您要處理少量影像,可以使用 Base64 對其進行編碼。這種方法將二進位資料轉換為可以直接嵌入到HTML 中的緊湊字串:
echo '<dt><strong>Technician Image:</strong></dt><dd>' . '<img src="data:image/jpeg;base64,' . base64_encode($row2['image']) . '" width="290" height="290">' . "</dd>";
解決方案2:PHP 代理檔案
更有效的方法對於大量影像,建立一個PHP 代理文件,根據ID從資料庫中擷取影像參數:
<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; ?>
注意:要正確實作這些解決方案,請確保在伺服器設定中將影像檔案的MIME 類型設為image/ jpeg。
以上是如何在 MySQL 中顯示儲存為 BLOB 的映像?的詳細內容。更多資訊請關注PHP中文網其他相關文章!