1 回答

TA貢獻35條經驗 獲得超190個贊
<html><head>
<title>上載文件表單</title></head>?
<body>?
<form enctype="multipart/form-data" action="" method="post">?
請選擇文件: <br>
<input name="upload_file" type="file"><br>
<input type="submit" value="上傳文件">?
</form>?
</body>
</html>?
<?
$upload_file=$_FILES['upload_file']['tmp_name'];
$upload_file_name=$_FILES['upload_file']['name'];
if($upload_file){
$file_size_max = 1000*1000;// 1M限制文件上傳最大容量(bytes)
$store_dir = "d:/";// 上傳文件的儲存位置
$accept_overwrite = 1;//是否允許覆蓋相同文件
// 檢查文件大小
if ($upload_file_size > $file_size_max) {
echo "對不起,你的文件容量大于規定";
exit;
}
// 檢查讀寫文件
if (file_exists($store_dir . $upload_file_name) && !$accept_overwrite) {
Echo? ?"存在相同文件名的文件";
exit;
}
//復制文件到指定目錄
if (!move_uploaded_file($upload_file,$store_dir.$upload_file_name)) {
echo "復制文件失敗";
exit;
}
}
Echo? ?"<p>你上傳了文件:";
echo??$_FILES['upload_file']['name'];
echo "<br>";
//客戶端機器文件的原名稱。?
Echo? ?"文件的 MIME 類型為:";
echo $_FILES['upload_file']['type'];
//文件的 MIME 類型,需要瀏覽器提供該信息的支持,例如“image/gif”。?
echo "<br>";
Echo? ?"上傳文件大小:";
echo $_FILES['upload_file']['size'];
//已上傳文件的大小,單位為字節。?
echo "<br>";
Echo? ?"文件上傳后被臨時儲存為:";
echo $_FILES['upload_file']['tmp_name'];
//文件被上傳后在服務端儲存的臨時文件名。?
echo "<br>";
$Erroe=$_FILES['upload_file']['error'];
switch($Erroe){
? ?? ???case 0:
? ?? ?? ?? ?Echo? ?"上傳成功"; break;
? ?? ???case 1:
? ?? ?? ?? ?Echo? ?"上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值."; break;
? ?? ???case 2:
? ?? ?? ?? ?Echo? ?"上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。";? ? break;
? ?? ???case 3:
? ?? ?? ?? ?Echo? ?"文件只有部分被上傳";break;
? ?? ???case 4:
? ?? ?? ?? ?Echo? ?"沒有文件被上傳";break;
}
?>
- 1 回答
- 0 關注
- 1443 瀏覽
添加回答
舉報