PHP上传文件 - 只填充$ _FILES ['name']

时间:2012-06-06 06:05:22

标签: php

我一直在网上搜索这个问题两天,希望其他人之前已经遇到过这个问题。我看到很多关于S.O.的问题。关于文件上传和PHP,但我的问题略有不同。我希望我只是遗漏了一些非常明显的东西。

好像我的表单中的数据从未完全到达服务器,因为 $ _ FILES 数组中填充的唯一参数是'name'。

例如,这是一个 $ _ FILES

的vardump
array(1) { ["gameimage"]=> array(1) { ["name"]=> string(15) "Donkey-kong.gif" } }

没有错误代码,没有 tmp_name ,并且没有类型

以下是我正在测试的一些非常基本的HTML:

<form name="upload-image-form" enctype="multipart/form-data" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
<input type="file" name="gameimage" size="30" />
<input type="submit" value="Submit" />
</form>

以下是我的相关php.ini设置:

file_uploads = On
upload_max_filesize = 2M
max_file_uploads = 10
upload_tmp_dir is default, but I have tried with /tmp as well.

运行PHP 5.3.8

我怀疑apache mod_rewrite或其他一些apache mod是干扰。

我完全控制主机,它是在AWS中运行的微实例。

任何帮助将不胜感激!

修正案#1:

我已经在Chrome和FF的浏览器控制台中验证了数据正在通过http正确传输。我的测试文件很小,不到10kb。

修正案#2:

似乎有其他人,使用完全相同的AWS实例,遇到了同样的问题:

http://www.webmasterworld.com/php/4452298.htm

这些版本的apache和linux似乎存在一些核心问题。

0 个答案:

没有答案