所以我發佈一個較早的問題在這裏:uploadHTML/PHP文件上傳不接受
我試過的解決方案,但現在不管它是正確的文件類型或沒有,它只是說「無效文件」。這裏是我的html:
<form action="upload_file.php" method="post" enctype="multipart/form-data" target="my_iframe">
Select a file: <input type="file" name="upload">
<input type="submit">
</form>
這是我的upload_file.php:
$allowedExts = array("doc", "docx");
$extension = end(explode(".", $_FILES["file"]["upload"]));
if (($_FILES["file"]["size"] < 200000)
&& in_array($extension, $allowedExts)) {
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["upload"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"]/1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
if (file_exists("Proposals/" . $_FILES["file"]["upload"]))
{
echo $_FILES["file"]["upload"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"Proposals/" . $_FILES["file"]["upload"]);
echo "Stored in: " . "Proposals/" . $_FILES["file"]["upload"];
}
}
} else {
echo "Invalid file";
}
我也試過:
$extension = pathinfo($_FILES["file"]["upload"], PATHINFO_EXTENSION);
,做了
die($extension);
在兩個但是什麼都沒有獲得打印。所以我有兩個問題
1)我的上述代碼有什麼問題
2)如何隱藏iframe直到我收到回覆?然後有一個好的按鈕就可以讓它在用戶閱讀響應後消失?下面是iframe的代碼,如果有幫助:
<iframe name="my_iframe" src="upload_file.php"></iframe>
搜索了一個錯誤,更換'$ _FILES [ 「文件」]'和'$ _FILES ['上傳']'應該這樣做 –