我們開始正式的學習,學習如何來上傳文件。上傳文件必須在網(wǎng)頁中準備好一個form表單。
這是一個簡單的HTML頁面表單,form表單為文件內容準備了一個專用的類。
我們來看一下表單的代碼和注意項:
<html> <head> <meta charset="utf-8" /> <title>單文件上傳</title> </head> <body> <form action="file.php" method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="上傳"> </form> </body> </html>
注意事項:
form 表單中的參數(shù)method 必須為post。若為get是無法進行文件上傳的
enctype須為multipart/form-data
file.php代碼:
<?php //print_r($_FILES["upfile"]); if(is_uploaded_file($_FILES['upfile']['tmp_name'])){ $upfile=$_FILES["upfile"]; //獲取數(shù)組里面的值 $name=$upfile["name"];//上傳文件的文件名 $type=$upfile["type"];//上傳文件的類型 $size=$upfile["size"];//上傳文件的大小 $tmp_name=$upfile["tmp_name"];//上傳文件的臨時存放路徑 //判斷是否為圖片 switch ($type){ case 'image/pjpeg':$okType=true; break; case 'image/jpeg':$okType=true; break; case 'image/gif':$okType=true; break; case 'image/png':$okType=true; break; } if($okType){ /** * 0:文件上傳成功<br/> * 1:超過了文件大小,在php.ini文件中設置<br/> * 2:超過了文件的大小MAX_FILE_SIZE選項指定的值<br/> * 3:文件只有部分被上傳<br/> * 4:沒有文件被上傳<br/> * 5:上傳文件大小為0 */ $error=$upfile["error"];//上傳后系統(tǒng)返回的值 echo "================<br/>"; echo "上傳文件名稱是:".$name."<br/>"; echo "上傳文件類型是:".$type."<br/>"; echo "上傳文件大小是:".$size."<br/>"; echo "上傳后系統(tǒng)返回的值是:".$error."<br/>"; echo "上傳文件的臨時存放路徑是:".$tmp_name."<br/>"; echo "開始移動上傳文件<br/>"; //把上傳的臨時文件移動到up目錄下面 move_uploaded_file($tmp_name,'up/'.$name); $destination="up/".$name; echo "================<br/>"; echo "上傳信息:<br/>"; if($error==0){ echo "文件上傳成功啦!"; echo "<br>圖片預覽:<br>"; echo "<img src=".$destination.">"; //echo " alt=\"圖片預覽:\r文件名:".$destination."\r上傳時間:\">"; }elseif ($error==1){ echo "超過了文件大小,在php.ini文件中設置"; }elseif ($error==2){ echo "超過了文件的大小MAX_FILE_SIZE選項指定的值"; }elseif ($error==3){ echo "文件只有部分被上傳"; }elseif ($error==4){ echo "沒有文件被上傳"; }else{ echo "上傳文件大小為0"; } }else{ echo "請上傳jpg,gif,png等格式的圖片!"; } } ?>
文件上傳在這里就不做測試了,希望大家自己可以多多練習,文件上傳在PHP中很常見的。
<form ="php_cn.php" method="" ="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="上傳"></form>