首頁 >資料庫 >mysql教程 >如何使用 PHP 正確地將 Blob(映像)插入 MySQL?

如何使用 PHP 正確地將 Blob(映像)插入 MySQL?

Linda Hamilton
Linda Hamilton原創
2024-12-20 09:43:13472瀏覽

How to Properly Insert Blobs (Images) into MySQL using PHP?

使用php 在MySql 資料庫中插入Blob

嘗試在MySQL 資料庫中儲存映像時,您可能會遇到到問題。本指南將提供成功儲存影像資料的解決方案。

問題

<br>$sql = "INSERT進入ImageStore(ImageId,Image)<br>VALUES('$this->image_id','file_get_contents($tmp_image)')";<br>

這段程式碼在PHP 中建立字串,但在建立字串之前不會評估函數呼叫file_get_contents($tmp_image)。因此,不會插入實際的二進位資料。

解1

要解決此問題,您需要明確連接函數的結果呼叫:

<br>$sql = "INSERT INTO ImageStore(ImageId,Image)<br>VALUES('$this->image_id','" . file_get_contents ($tmp_image) . "')";<br>

解決方案2

此外,請確保二進位資料中的任何字元可能會幹擾查詢的是轉義:

<br>$ sql = "INSERT INTO ImageStore(ImageId,Image)<br>VALUES('$this->image_id','" . mysql_escape_string (file_get_contents($tmp_image)) 。 "')";<br>

解3

一般不建議在在在資料庫中儲存大型二進位資料。它可能會導致效能問題和資料庫膨脹。考慮使用單獨的檔案系統來儲存影像。

以上是如何使用 PHP 正確地將 Blob(映像)插入 MySQL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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