摘要:鑒于上一篇上傳圖片到數(shù)據(jù)庫(kù)并可以進(jìn)行顯示鏈接描述有筆友提出了改進(jìn)意見(jiàn),下面這篇文章就是采納改進(jìn)意見(jiàn)進(jìn)行修改的另外一種方案。結(jié)語(yǔ)本人剛接觸不久,自知能力不夠水平有限,該文中若存在什么不足或需改進(jìn)之處還請(qǐng)大家多多指正。
鑒于上一篇《PHP上傳圖片到數(shù)據(jù)庫(kù)并可以進(jìn)行顯示》鏈接描述有筆友提出了改進(jìn)意見(jiàn),下面這篇文章就是采納改進(jìn)意見(jiàn)進(jìn)行修改的另外一種方案。
1、創(chuàng)建數(shù)據(jù)表
CREATE TABLE image( id int(4) unsigned NOT NULL AUTO_INCREMENT, name varchar(100) default NULL, path varchar(100) default NULL, time timestamp default CURRENT_TIMESTAMP, PRIMARY KEY(id) )engine=myisam DEFAULT charset=utf8
2、新建一個(gè)uploads文件夾
uploads文件夾下面新建一個(gè)images文件夾(用來(lái)存放上傳后的圖片的文件夾)
,創(chuàng)建index.php(用于點(diǎn)擊選擇文件后提交的頁(yè)面),upimage.php(實(shí)現(xiàn)圖片上傳的代碼存放),getimage.php(實(shí)現(xiàn)圖片顯示的代碼存放)
3、用于點(diǎn)擊選擇文件后提交頁(yè)面的index.php
圖片上傳和下載 文件上傳
3、實(shí)現(xiàn)圖片上傳的代碼存放
0){ switch($upfile["error"]){//獲取錯(cuò)誤信息 case 1: $info="上傳得文件超過(guò)了 php.ini中upload_max_filesize 選項(xiàng)中的最大值."; break; case 2: $info="上傳文件大小超過(guò)了html中MAX_FILE_SIZE 選項(xiàng)中的最大值."; break; case 3: $info="文件只有部分被上傳"; break; case 4: $info="沒(méi)有文件被上傳."; break; case 5: $info="找不到臨時(shí)文件夾."; break; case 6: $info="文件寫(xiě)入失敗!";break; }die("上傳文件錯(cuò)誤,原因:".$info); } //3.本次上傳文件大小的過(guò)濾(自己選擇) if($upfile["size"]>100000){ die("上傳文件大小超出限制"); } //4.類(lèi)型過(guò)濾 if(!in_array($upfile["type"],$typelist)){ die("上傳文件類(lèi)型非法!".$upfile["type"]); } //5.上傳后的文件名定義(隨機(jī)獲取一個(gè)文件名) $fileinfo=pathinfo($upfile["name"]);//解析上傳文件名字 do{ $newfile=date("YmdHis").rand(1000,9999).".".$fileinfo["extension"]; }while(file_exists($path.$newfile)); //6.執(zhí)行文件上傳 //判斷是否是一個(gè)上傳的文件 if(is_uploaded_file($upfile["tmp_name"])){ //執(zhí)行文件上傳(移動(dòng)上傳文件) if(move_uploaded_file($upfile["tmp_name"],$path.$newfile)){ echo "文件上傳成功!"; //將文件名和路徑存儲(chǔ)到數(shù)據(jù)庫(kù) $dbms = "mysql"; //數(shù)據(jù)庫(kù)類(lèi)型 $host = "localhost"; //數(shù)據(jù)庫(kù)主機(jī)名 $dbName = "smart_lock"; // 使用的數(shù)據(jù)庫(kù) $user = "root"; //數(shù)據(jù)庫(kù)連接用戶(hù)名 $pass = "123456"; //對(duì)應(yīng)的密碼 $dsn ="mysql:host = $host;dbname=$dbName"; $pdo = new PDO($dsn,$user,$pass); $data = addslashes(fread(fopen($pic,"r"),filesize($pic))); //將圖片的名稱(chēng)和路徑存入數(shù)據(jù)庫(kù) $query = "INSERT INTO image(name,path)VALUES("$newfile","$path$newfile")"; $result = $pdo -> query($query); if($result){ echo"文件已存儲(chǔ)到數(shù)據(jù)庫(kù)"; } else{ echo"請(qǐng)求失敗,請(qǐng)重試"; } }else{ die("上傳文件失??!"); } }else{ die("不是一個(gè)上傳文件!"); } ?>
4、實(shí)現(xiàn)圖片顯示的getimage.php
query($query); if($result){ $result = $result->fetchAll(2); echo ""; // $path="./uploads/";//定義一個(gè)上傳后的目錄 // echo "
"; } else{ echo "Handle errors"; } ?>
5、運(yùn)行結(jié)果
(1)圖片上傳成功后在數(shù)據(jù)庫(kù)中的存儲(chǔ)如下
運(yùn)行g(shù)etimage.php文件最終顯示上傳的圖片如下
最后打開(kāi)images文件還可以看到上傳的圖片均已保存在該文件夾中。
結(jié)語(yǔ):本人剛接觸PHP不久,自知能力不夠水平有限,該文中若存在什么不足或需改進(jìn)之處還請(qǐng)大家多多指正。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/29094.html
摘要:前言在使用編輯器時(shí),一般我們都是需要修改默認(rèn)的圖片上傳路徑的,下面是我整理好的修改位置和方法供大家參考。如果想修改上傳路徑,那么通過(guò)修改文件第行就可以做到。 前言 在使用UEditor編輯器時(shí),一般我們都是需要修改默認(rèn)的圖片上傳路徑的,下面是我整理好的修改位置和方法供大家參考。 操作 Ueditor PHP版本本身自帶了一套上傳程序,我們可以在此基礎(chǔ)中,找到配置文件修改它。配置文件位置...
項(xiàng)目要求上傳圖片的模塊,這個(gè)簡(jiǎn)單,但是要在保存圖片后需要編輯就不怎么好處理了,現(xiàn)在就和大家一起分享?! ∫弧?yīng)用場(chǎng)景 1.上傳圖片并進(jìn)行放大預(yù)覽 2.圖片上傳代碼 就是直接將圖片上傳到接口,成功后返回圖片路徑,表單提交時(shí),后臺(tái)要路徑拼成的字符串格式,類(lèi)似str=‘/uploads/20220418/d93905dbcd041a0a88abc72fd34b6c98.jpg,/uploads...
摘要:關(guān)于上傳圖文消息素材和新增永久圖文素材的區(qū)別上傳圖文消息素材等于是直接把圖文素材傳到微信的服務(wù)器,每次憑借獲取素材,并且不占用素材庫(kù)新增永久圖文素材在開(kāi)發(fā)者和微信服務(wù)器之間,多了一個(gè)素材庫(kù)。 **說(shuō)明1.文章和有道筆記幾乎內(nèi)容相同,所以如果有人在有道上有幸看到一樣的文章,應(yīng)該也是我寫(xiě)的,除非是全部復(fù)制2.內(nèi)容會(huì)較長(zhǎng),故會(huì)拆分多篇文章講解3.目前基本的群發(fā)已記錄完結(jié),如果后續(xù)有補(bǔ)充,會(huì)作...
摘要:第三種,使用格式,即在中請(qǐng)求參數(shù)處理跨域問(wèn)題當(dāng)然請(qǐng)求方式只能是。最后發(fā)現(xiàn)有網(wǎng)友說(shuō)版本不穩(wěn)定引起的,于是把百度地圖回退到了,結(jié)果還真是可以了。請(qǐng)問(wèn)在移動(dòng)端頁(yè)面中播放優(yōu)酷里面的視頻,怎樣實(shí)現(xiàn) 1.web掃碼登錄怎么實(shí)現(xiàn),思路 步驟 WEB平臺(tái) 手機(jī) 第1步 生成二維碼 第2步 (ajax監(jiān)控后臺(tái)) 掃碼 第3步 ...
閱讀 3804·2021-11-23 09:51
閱讀 1474·2021-11-10 14:35
閱讀 4080·2021-09-22 15:01
閱讀 1376·2021-08-19 11:12
閱讀 465·2019-08-30 15:53
閱讀 1760·2019-08-29 13:04
閱讀 3511·2019-08-29 12:52
閱讀 3153·2019-08-23 16:14