我是新的精簡版的PHP。我試圖上傳一個簡單的東西,但它不工作..幫助找出我在w3school中提到..我有一個代碼..並且我創建了一個文件夾,稱爲上傳..爲什麼它不工作..文件上傳腳本拋出錯誤:「無效的文件」
<html>
<body>
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file"><br>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
upload_file.php
<?php
$allowedExts = array("gif", "jpeg", "jpg", "png");
$extension = end(explode(".", $_FILES["file"]["name"]));
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<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("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
}
else
{
echo "Invalid file";
}
?>
更具體的幾乎肯定會有所幫助。如同正確格式化您的代碼。 – str 2013-04-26 14:59:42
你的意思是什麼不起作用? PHP代碼是否完全不能運行?它會做與你所期望的不同的事情嗎?有錯誤消息嗎? – andrewsi 2013-04-26 15:00:13
你的第一個錯誤是使用w3fools。他們不是一個有用的資源。他們的代碼完全是垃圾,充滿了安全漏洞和糟糕的做法。你的問題也需要工作。 「不工作」是** NOT **有用的信息。如果它有效,你不會在這裏。所以告訴我們**如何**它不起作用。 – 2013-04-26 15:01:24