程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP 教程之如何使用BLOB存取圖片信息實例

PHP 教程之如何使用BLOB存取圖片信息實例

編輯:關於PHP編程

https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011712015280.jpg

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


執行這個腳本後上傳表單將顯示如下:

https://www.aspphp.online/bianchen/UploadFiles_4619/201701/2017011712015206.png


提交表單,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開發者有所幫助,感謝閱讀本文。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved