日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
「數(shù)據(jù)庫(kù)存圖」技能get!極簡(jiǎn)教程讓你速學(xué)怎樣存儲(chǔ)圖片(怎樣把圖片存入數(shù)據(jù)庫(kù))

數(shù)據(jù)庫(kù)存圖技能get!極簡(jiǎn)教程讓你速學(xué)怎樣存儲(chǔ)圖片

創(chuàng)新互聯(lián)公司長(zhǎng)期為近1000家客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為平果企業(yè)提供專(zhuān)業(yè)的網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作,平果網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

在現(xiàn)代化的網(wǎng)絡(luò)開(kāi)發(fā)之中,圖片的上傳和存儲(chǔ)已成為功能的必須點(diǎn)之一。無(wú)論是一個(gè)社交媒體網(wǎng)站還是一家電商平臺(tái),圖片上傳、管理和展示都是關(guān)鍵的功能之一,但是如何在后端存儲(chǔ)圖片卻是一項(xiàng)比較費(fèi)神的技巧。在這篇文章中,我們將學(xué)習(xí)如何通過(guò)數(shù)據(jù)庫(kù)存儲(chǔ)圖片,從而達(dá)到方便管理、一致性、并且易于備份的目的。

1.數(shù)據(jù)庫(kù)存儲(chǔ)圖片的原理

當(dāng)用戶(hù)上傳圖片時(shí),圖片的二進(jìn)制內(nèi)容被壓縮成流格式,然后通過(guò)HTTP表單發(fā)送到服務(wù)器,分解成文件名和文件內(nèi)容。在傳統(tǒng)的Web開(kāi)發(fā)模式中,這些圖片最終都會(huì)被保存在本地服務(wù)器的磁盤(pán)上并進(jìn)行管理。但是,當(dāng)您開(kāi)發(fā)的Web應(yīng)用程序需要滿(mǎn)足跨多個(gè)數(shù)據(jù)中心的需求時(shí),存儲(chǔ)在一個(gè)地方的二進(jìn)制大型文件可能會(huì)很快成為一個(gè)問(wèn)題,而這時(shí)候數(shù)據(jù)庫(kù)存儲(chǔ)圖片就派上用場(chǎng)了。

數(shù)據(jù)庫(kù)存儲(chǔ)圖片的原理很直觀:將圖片存儲(chǔ)在數(shù)據(jù)庫(kù)中的二進(jìn)制blob字段中,這種方式將圖片的二進(jìn)制內(nèi)容存儲(chǔ)在一個(gè)二級(jí)文件系統(tǒng)中。與存儲(chǔ)在硬盤(pán)上不同,數(shù)據(jù)庫(kù)存儲(chǔ)的圖像是與數(shù)據(jù)一起存儲(chǔ)的,因此數(shù)據(jù)被存儲(chǔ)在相同的地方,使得數(shù)據(jù)的維護(hù)和管理更加便捷。

2. 連接數(shù)據(jù)庫(kù)

我們將連接到MySQL數(shù)據(jù)庫(kù)并創(chuàng)建一個(gè)名為“image_store”的新數(shù)據(jù)庫(kù)。以下是如何連接數(shù)據(jù)庫(kù)的代碼示例:

“`php

$servername = “l(fā)ocalhost”;

$username = “root”;

$password = “”;

$dbname = “image_store”;

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {

die(“Connection fled: ” . $conn->connect_error);

}

echo “Connected successfully”;

“`

連接成功后,我們可以執(zhí)行以下語(yǔ)句創(chuàng)建一個(gè)名為“images”的新表來(lái)存儲(chǔ)圖片。

“`sql

CREATE TABLE images(

id INT AUTO_INCREMENT PRIMARY KEY,

image BLOB,

image_name VARCHAR(255)

);

“`

3. 上傳圖片并將其保存到數(shù)據(jù)庫(kù)

以下是上傳圖片并將其保存到數(shù)據(jù)庫(kù)的代碼示例:

“`php

if(isset($_FILES[‘image’])){

$image_name = $_FILES[‘image’][‘name’];

$image = addslashes(file_get_contents($_FILES[‘image’][‘tmp_name’]));

$sql = “INSERT INTO images (image, image_name) VALUES (‘$image’, ‘$image_name’)”;

if ($conn->query($sql) === TRUE) {

echo “New record created successfully”;

} else {

echo “Error: ” . $sql . “
” . $conn->error;

}

}

“`

此段代碼首先驗(yàn)證用戶(hù)是否上傳了圖像,然后獲取文件名和blob數(shù)據(jù)。我們使用“addslashes()”將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為字符串,然后將其插入到數(shù)據(jù)庫(kù)表中。

4. 從數(shù)據(jù)庫(kù)中檢索圖像并在頁(yè)面上呈現(xiàn)

以下是從數(shù)據(jù)庫(kù)中檢索圖像并在頁(yè)面上呈現(xiàn)的代碼示例:

“`php

$sql = “SELECT * FROM images”;

$result = $conn->query($sql);

if ($result->num_rows > 0) {

while($row = $result->fetch_assoc()) {

echo ““;

}

} else {

echo “0 results”;

}

“`

此段代碼執(zhí)行一個(gè)SQL查詢(xún),并從結(jié)果集中構(gòu)建了一個(gè)包含所有圖像的循環(huán)。對(duì)于每個(gè)圖像,使用base64編碼將圖像數(shù)據(jù)轉(zhuǎn)換為字符串形式,然后使用元素在html上呈現(xiàn)出來(lái)。

在本教程中,我們介紹了如何使用PHP將圖像存儲(chǔ)在MySQL數(shù)據(jù)庫(kù)中。連接數(shù)據(jù)庫(kù)、創(chuàng)建表,上傳圖像和將其解碼然后在已經(jīng)上傳的圖像中呈現(xiàn)并沒(méi)有什么可嚇人的。然而,學(xué)習(xí)如何存儲(chǔ)和管理圖像,能夠加速至關(guān)重要的Web開(kāi)發(fā)過(guò)程。我們希望這篇文章能夠幫助你掌握存儲(chǔ)圖片的技巧,并在你的下一個(gè)Web應(yīng)用程序中實(shí)現(xiàn)保存圖像數(shù)據(jù)的功能。

相關(guān)問(wèn)題拓展閱讀:

  • 如何往數(shù)據(jù)庫(kù)中存圖片
  • 怎么把圖片存入數(shù)據(jù)庫(kù)中??

如何往數(shù)據(jù)庫(kù)中存圖片

兩種,一種是將圖片轉(zhuǎn)化成二進(jìn)制數(shù)據(jù)流存入數(shù)據(jù)庫(kù)中。一種是保存圖片的路徑,然后前臺(tái)讀取路徑去調(diào)用圖片。相關(guān)的代碼百度一下應(yīng)該會(huì)有,第二種方法實(shí)現(xiàn)上蔽世比較簡(jiǎn)單,就拿陸是存儲(chǔ)路徑,然后根據(jù)路徑讀取對(duì)應(yīng)的圖片顯示出來(lái)。之一種就比較麻煩,要先把圖宏敏肢片轉(zhuǎn)化成二進(jìn)制數(shù)據(jù),讀取時(shí)就是從數(shù)據(jù)庫(kù)讀取對(duì)應(yīng)數(shù)據(jù)再轉(zhuǎn)化成圖片顯示出來(lái)。

怎么把圖片存入數(shù)據(jù)庫(kù)中??

如果非要存入數(shù)據(jù)庫(kù)表,直接以 BLOB類(lèi)型的字段存入數(shù)據(jù)庫(kù)即可。

但一般不推薦這樣存,內(nèi)容太大了,放在表中不合適。

一般做法:圖片放在硬盤(pán)某個(gè)目錄下,數(shù)據(jù)庫(kù)中只存文件的路徑。需要顯示圖片時(shí)橘握棗,先從數(shù)據(jù)庫(kù)中找到相皮槐應(yīng)的路徑,然后再?gòu)拇疟P(pán)找到對(duì)應(yīng)的圖片,顯示出來(lái)。

不但圖片這樣做,想一些論壇的長(zhǎng)篇帖子、論文、文檔等,都是這樣,不可能把具體內(nèi)容存入數(shù)據(jù)庫(kù)的,只存路徑就圓拆夠了。

關(guān)于怎樣把圖片存入數(shù)據(jù)庫(kù)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)。專(zhuān)業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。


新聞標(biāo)題:「數(shù)據(jù)庫(kù)存圖」技能get!極簡(jiǎn)教程讓你速學(xué)怎樣存儲(chǔ)圖片(怎樣把圖片存入數(shù)據(jù)庫(kù))
當(dāng)前URL:http://www.dlmjj.cn/article/cdgdojs.html