我有一个表单,表单的动作是submit.php,我在submit.php上尝试上传文件图像,但是当我点击submit和print_r $ _FILE时,会出现一个空数组。我究竟做错了什么?我不想在与表单相同的页面上传文件。这是表格:
<form action="in-the-press-submit.php" method="post">
<p>
<label for="title">Title:</label>
<input type="input" name="title" id="title">
</p>
<p>
<label for="posted-on">Posted On:</label>
<input type="date" name="posted-on" id="posted-on">
</p>
<p>
<label for="description" style="vertical-align:top;">Description:</label>
<textarea rows="20" cols="70" name="description" id="description"></textarea>
</p>
<p>
<label for="image">Image:</label>
<input type="file" name="image" id="image">
</p>
<p>
<input type="submit" name="submit" id="submit">
</p>
</form>
这是我在提交页面中的代码:
<?php
if ($_FILES["file"]["error"] > 0) {
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
} else {
move_uploaded_file($_FILES["file"]["tmp_name"],
"/image-test/" . $_FILES["file"]["name"]);
echo "Stored in: " . "/image-test/" . $_FILES["file"]["name"];
}
?>
答案 0 :(得分:3)
试试这个
<form action="in-the-press-submit.php" method="post" enctype="multipart/form-data">
答案 1 :(得分:1)
您的表单标记中需要enctype="multipart/form-data"
:
<form action="in-the-press-submit.php" method="post" enctype="multipart/form-data">
请参阅POST method uploads上的php手册。
答案 2 :(得分:1)
您需要在表单标记中包含enctype = multipart / form-data的原因是:
application / x-www-form-urlencoded是POST表单没有附加文件的标准和默认方式。
multipart / form-data是使用附加文件POST表单的标准方法,因为此编码允许整个文件包含在数据中
答案 3 :(得分:0)
要上传文件,请添加
enctype = "multipart/form-data"
在表单标签中。