BLOB是一種MySQL資料類型,稱為二進位大對象。正如它的名字它是用來儲存類似MYSQL二進位和VARBINARY類型的、大量的字串資料。
MySQL BLOB分類
MySQL BLOB類型 最大儲存長度(位元組)
TINYBLOB (1)(2 ^ 8)
blob ((2 ^ 16)1)
MEDIUMBLOB ((2 ^ 24)1)
LONGBLOB ((2 ^ 32)1)
在這篇教程中,我們學習如何使用
PHP插入和讀取MySQL BLOB欄位。
(PS:T不錯的
PHP Q扣峮:276167802,驗證:csl)
首先,我們需要建立一個MySQL表與一個BLOB欄位。
CREATE TABLE IF NOT EXISTS `output_images` ( `imageId` tinyint(3) NOT NULL AUTO_INCREMENT, `imageType` varchar(25) NOT NULL DEFAULT '', `imageData` mediumblob NOT NULL, PRIMARY KEY (`imageId`))
插入資料
將圖片資訊插入MySQL BLOB欄位中。
1、上傳影像檔.
2、擷取映像屬性(映像資料、映像類型等等。)
3、影像檔插入BLOB。
PHP實現指令碼:
imageUpload.php
0) {if(is_uploaded_file($_FILES['userImage']['tmp_name'])) {mysql_connect("localhost", "root", "");mysql_select_db ("phppot_examples");$imgData =addslashes(file_get_contents($_FILES['userImage']['tmp_name']));$imageProperties = getimageSize($_FILES['userImage']['tmp_name']);$sql = "INSERT INTO output_images(imageType ,imageData)VALUES('{$imageProperties['mime']}', '{$imgData}')";$current_id = mysql_query($sql) or die("Error: Problem on Image Insert
" .mysql_error());if(isset($current_id)) {header("Location: listImages.php");}}}?>Upload Image to MySQL BLOB
執行這個指令碼後上傳表單將顯示如下:
提交表單,PHP擷取內容映像的檔案並將其作為位元據儲存到MySQL BLOB列。
顯示圖片
在瀏覽器上顯示BLOB映像,我們必須:
1、從MySQL BLOB獲得映像資料和類型
2、將類型設定為映像(image/jpg, image/gif, …)使用PHP header()函數。
3、輸出映像內容。
imageView.php
Error: Problem on Retrieving Image BLOB
". mysql_error());$row = mysql_fetch_array($result);header("Content-type: " . $row["imageType"]);echo $row["imageData"];}mysql_close($conn);?>
上面的PHP代碼將顯示MySQL BLOB儲存的圖片。從HTML映像標籤我們可以參考這個PHP檔案與相應image_id作為參數。例如:
" />
完成代碼如下:
listImages.php
List BLOB Images" />
以上是本文關於PHP 教程之如何使用BLOB存取圖片資訊的執行個體,希望本文對廣大php開發人員有所協助,感謝閱讀本文。
http://www.bkjia.com/PHPjc/678029.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/678029.htmlTechArticleBLOB是一種 MySQL 資料類型,稱為二進位大對象。正如它的名字它是用來儲存類MYSQL二進位和VARBINARY類型的、大量的字串資料。 MySQL BLOB分類...