Latest News

Home » PHP程式設計教學 » 如何利用PHP上傳文件的方法(PHP程式設計問題與答覆)

如何利用PHP上傳文件的方法(PHP程式設計問題與答覆)

PHP程式設計問題諮詢:
我想利用PHP上傳文件,其方法為何?

———————————————————
PHP程式設計問題回覆:
您要利用PHP上傳文件,可以參考以下的範例:

<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;
}
?>

————————————————————-

About

發佈留言