首頁 >資料庫 >mysql教程 >為什麼我的 MySQL BLOB 映像無法正確顯示?

為什麼我的 MySQL BLOB 映像無法正確顯示?

Patricia Arquette
Patricia Arquette原創
2024-12-29 15:28:11981瀏覽

Why Is My MySQL BLOB Image Not Displaying Correctly?

顯示MySQL 中儲存為BLOB 的影像

尋求擷取資料庫中儲存為BLOB 的影像時,您會遇到正確顯示它們的困難。您的程式碼會擷取資料並將其傳遞給腳本,該腳本將標頭設為 image/jpeg 並回顯影像。但是,您在瀏覽器中看到的是圖像圖標,而不是圖像本身。

要解決此問題,建議您採用修改後的方法:

將影像插入資料庫

// Retrieve image data from a temporary file
$image = file_get_contents($_FILES['images']['tmp_name']);

// Prepare an SQL statement and bind the image parameter
$query = "INSERT INTO products (image) VALUES(?)";
$stmt = $db->prepare($query);
$stmt->bind_param('s', $image);

// Execute the statement
$stmt->execute();

檢索並顯示影像資料庫

// Prepare an SQL statement and bind the ID parameter
$sql = "SELECT * FROM products WHERE id = ?";
$stmt = $db->prepare($sql);
$stmt->bind_param('s', $id);

// Execute the statement and retrieve the result
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_array();

// Encode the image data as base64 and embed it in an HTML element
echo '<img src="data:image/jpeg;base64,' . base64_encode($row['image']) . '" />';

這種修改後的方法應該使您能夠有效地顯示在MySQL 中儲存為 BLOB 的映像。透過綁定圖像參數並在 HTML 元素中將其編碼為 base64,您可以正確檢索並呈現圖像資料。

以上是為什麼我的 MySQL BLOB 映像無法正確顯示?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn