PHP中$ _FILES的问题

时间:2014-06-08 16:20:10

标签: php file upload

我正在尝试创建一个可以上传图片的网站。

<form action="edit.php" method="get" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="submit">
</form>

edit.php - 文件中,我选择使用W3Schools(http://www.w3schools.com/php/php_file_upload.asp)中的示例。当我到达编辑器页面时,它将无法上传,因为该文件是无效的类型(在数组中找不到文件类型)。

经过多次尝试后,我将此代码放在文件的顶部:

if (!isset($_FILES['file'])) { die("Not found!"); }

当我再次加载编辑器页面时,我收到了自己放在那里的错误消息。好像我从index.php页面发送的文件不会在edit.php中创建。

任何人都可以帮助我吗?

4 个答案:

答案 0 :(得分:0)

它应该是这样的,然后在你的edit.php文件中,你可以尝试打印$ _FILES数组。

//edit.php
print '<pre>';
print_r($_FILEs);


// index.php
<html>
<body>

<form action="edit.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> 

答案 1 :(得分:0)

if(!empty($_FILES['file']['size'])):

$file = $_FILES['file']['tmp_name'];
//play with the file then
endif;

答案 2 :(得分:0)

更改此行

<form action="edit.php" method="get" enctype="multipart/form-data">

<form action="edit.php" method="post" enctype="multipart/form-data">

请参阅此处以了解有关此主题的讨论。 File uploading using GET Method

答案 3 :(得分:0)

使用post方法。 index.php代码:

<form enctype="multipart/form-data" action="edit.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
Choose a file to upload: <input name="uploadedfile" type="file" /><br />
<input type="submit" value="Upload File" />
</form>

edit.php(刚打印的文件数组和输出如下) 码:     &#34 ;;     的print_r($ _ FILES);     打印&#34;&#34 ;;     ?&GT;

输出:     排列     (     [uploadedfile] =&gt;排列         (             [name] =&gt; ipmsgclip_r_1398851755_0.png             [type] =&gt;图像/ PNG             [tmp_name] =&gt;的/ tmp / phpktZwLl             [错误] =&gt; 0             [size] =&gt; 155         )     )

如果文件上传有任何错误,那么它将作为[错误]进入此数组。 例如:我上传的文件大小超过了上述文件大小(1000000) 然后输出数组将是:    排列   (     [uploadedfile] =&gt;排列         (             [name] =&gt; d.png             [type] =&gt;             [tmp_name] =&gt;             [错误] =&gt; 2             [size] =&gt; 0         )    )