PHP實(shí)現(xiàn)本地圖片上傳和驗(yàn)證功能-創(chuàng)新互聯(lián)

今天研究了一下PHP的FILES函數(shù),使用PHP實(shí)現(xiàn)本地圖片的上傳,驗(yàn)證文件是否為圖片,并將圖片保存在指定目錄下,實(shí)現(xiàn)游覽圖片的功能,感覺還是很好玩的,一共有兩個(gè)PHP頁面,一個(gè)作為前臺的上傳和圖片展示,另一個(gè)用來處理保存圖片,代碼里做了很詳細(xì)的注釋,并將FILES函數(shù)的語法,error報(bào)錯類型寫了出來,還有一些注意事項(xiàng)。

創(chuàng)新互聯(lián)建站于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元長樂做網(wǎng)站,已為上家服務(wù),為長樂各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575

FILES函數(shù)

1、$_FILES[‘myFile'][‘name'] 客戶端文件的原名稱
2、$_FILES[‘myFile'][‘type'] 文件的 MIME類型,需要瀏覽器提供該信息的支持,例如”image/gif”
3、$_FILES[‘myFile'][‘size'] 已上傳文件的大小,單位為字節(jié)
4、$_FILES[‘myFile'][‘tmp_name'] 文件被上傳后在服務(wù)端儲存的臨時(shí)文件名,一般是系統(tǒng)默認(rèn),可以在php.ini的upload_tmp_dir指定

關(guān)于FILES中error報(bào)錯類型及其注意:

過濾錯誤號

0: 沒有錯誤發(fā)生,文件上傳成功
1: 上傳的文件超過了 php.ini 中 upload_max_filesize選項(xiàng)限制的值
2: 上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項(xiàng)指定的值
3: 文件只有部分被上傳
4: 沒有文件被上傳
5: 上傳文件大小為0

注意:

1、文件被上傳結(jié)束后,默認(rèn)地被存儲在了臨時(shí)目錄中,這時(shí)必須將它從臨時(shí)目錄中刪除或移動到其它地方,如果沒有,則會被刪除。也就是不管是否上傳成功,腳本執(zhí)行完后臨時(shí)目錄里的文件肯定會被刪除。所以在刪除之前要用PHP的copy() 函數(shù)將它復(fù)制到其它位置,此時(shí),才算完成了上傳文件過程。
2、在 PHP 4.1.0 版本以前該數(shù)組的名稱為$HTTP_POST_FILES,它并不像_FILES 一樣是自動全局變量。PHP 3 不支持HTTP_POST_FILES數(shù)組。
3、用form上傳文件時(shí),一定要加上屬性內(nèi)容enctype=”multipart/form-data”,否則用$_FILES[filename]獲取文件信息時(shí)會報(bào)異常。

以下是代碼

index.php

<?php
 header("Content-Type:text/html;charset=utf-8");
 ?>
 <title>PHP實(shí)現(xiàn)圖片的上傳和驗(yàn)證</title>
 <style>
 table{text-align:center;}
 </style>
 <div align="center">
 <h2>上傳功能</h2>
 <form action="index_ok.php" method="post" enctype="multipart/form-data">
  上傳圖片:<input type="file" name="pic">
  <input type="submit" name="sub" value="上傳">
 </form>
 <table width="500">
  <tr bgcolor="#cccccc">
  <th>序號</th>
  <th>圖片</th>
  <th>添加時(shí)間</th>
  <th>操作</th>
  </tr>
  <?php
  //1 打開目錄
  $dir=opendir("./uploads");
  //2 遍歷目錄,輸出里面的圖片
  $i=0;
  while($f=readdir($dir)){
   $i++;
   //讀取目錄中的文件,模擬數(shù)據(jù)庫操作
   if($f!="." && $f!=".."){
    $filename="./uploads/$f";
    echo "<tr>";
    echo "<td>{$i}</td>";
    echo "<td><img src='./uploads/{$f}' width='80' height='60'></td>";
    echo "<td>".date("Y-m-d",filectime($filename))."</td>";
    echo "<td><a href='./uploads/{$f}'>查看</a></td>";
    echo "</tr>";
   }
  }
  //3 關(guān)閉目錄
  closedir($dir);
  ?>
 <tr bgcolor="#cccccc"><td colspan="4">&nbsp;</td></tr>
 </table>
 </div>

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站bm7419.com,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前題目:PHP實(shí)現(xiàn)本地圖片上傳和驗(yàn)證功能-創(chuàng)新互聯(lián)
鏈接URL:http://bm7419.com/article16/hsdgg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、做網(wǎng)站、建站公司、軟件開發(fā)、全網(wǎng)營銷推廣域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司