首頁 > 後端開發 > php教程 > 如何顯示儲存為 MySQL BLOB 的映像以及其他內容?

如何顯示儲存為 MySQL BLOB 的映像以及其他內容?

DDD
發布: 2024-10-21 06:24:02
原創
718 人瀏覽過

How to Display an Image Stored as a MySQL BLOB Along with Other Content?

顯示儲存在MySQL BLOB 中的映像

嘗試使用提供的PHP 顯示儲存在MySQL 資料庫中的BLOB 影像時程式碼中,使用者遇到了在圖像之前或之後輸出任何文字或內容會導致顯示錯誤的問題。本文針對這個問題,提出了一個在圖片旁邊顯示附加元素的解決方案。

原始程式碼:

<code class="php">include("inc/library.php");

connectToDatabase();

$sql = "SELECT * FROM theBlogs WHERE ID = 1;";

$result = mysql_query($sql) or die(mysql_error());  
$row = mysql_fetch_array($result);

header("Content-type: image/jpeg");
echo $row['imageContent'];
$db->close();</code>
登入後複製

嘗試直接在頁面中回顯圖片內容,但是遇到如果在其之前或之後輸出任何其他內容,則會出現問題。

解決方案

出現此問題的原因是瀏覽器將圖像資料以外的任何文字或內容視為圖像資料的一部分圖像。為了解決這個問題,可以將影像資料轉換為 Base64 並嵌入到 如何顯示儲存為 MySQL BLOB 的映像以及其他內容? 中。

<code class="php">echo '<img src="data:image/jpeg;base64,' . base64_encode($row['imageContent']) . '" />';
echo 'Hello world.';</code>
登入後複製

此解決方案將影像資料轉換為 Base64 並將其放置在 如何顯示儲存為 MySQL BLOB 的映像以及其他內容? 中。標籤,允許圖像正確顯示,同時也允許在頁面上輸出附加內容。

注意:雖然這種方法有效,但對於效能和快取來說並不是最佳的。建議探索替代解決方案來顯示 MySQL 資料庫中儲存為 BLOB 的映像,例如使用快取機製或外部映像伺服器。

以上是如何顯示儲存為 MySQL BLOB 的映像以及其他內容?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板