我想寫一個腳本,通過html表單上傳文件。 當我點擊提交沒有任何反應。php上傳文件函數
文件:upload_form.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<form action="do_upload.php" method="post" enctype="multipart/form-data"></form>
<p><strong>File to upload</strong></p>
<p><input name="img1" type="file" size="30" /></p>
<p><input name="submit" type="submit" value="Upolad File" /></p>
</body>
</html>
文件:do_upload.php
<?php
if ($_FILES[img1] != "" {
@copy($_FILES[img1] [tm_name], "/tmp" .$_FILES[img1][name])
or die("couldnt copy the file");
} else {
die("no file specified");
}
?>
<HTML>
<head>
<title>Successfull File Upload</title>
</head>
<body>
<h1>Success</h1>
<p>You sent: <? echo $_FILES[img1][name]; ?>, a <? echo $_FILES[img1][size]; ?>byte filw with a mime type of <? echo $_FILES[img1][type]; ?></p>
</body>
</HTML>
「沒有任何反應」,如「你得到一個空白頁面」? 「它不提交」?你的第二個文件有語法錯誤,這可能是沒有任何事情發生的原因。 (實際上也是第一個:) :) – deceze 2010-04-16 02:48:21
因爲它沒有提交,所以我早早地收到了。 現在我必須在第2行找到do_upload.php中的錯誤 – Jacksta 2010-04-16 02:51:46
您錯過了小括號。應該引用字符串文字鍵('$ _FILES ['img1']'而不是'$ _FILES [img1]'; http://php.net/manual/en/language.types.array.php#language.types。 array.foo-巴)。此外,您應該使用'empty','isset'或'array_key_exists',而不是將可能不存在的數組值與空字符串進行比較。最後,不要這樣使用'die'(http://www.phpfreaks.com/blog/or-die-must-die)。 – outis 2010-04-16 02:53:07