php $ _FILES为空

时间:2013-12-13 09:22:25

标签: php file-upload

我使用enctype=multipart/form-data获得了文件上传表单,但我的$_FILES数组始终为空。 max_upload_size足够大(2MB,我正在使用100kb文件进行测试)。完全相同的代码正在其他主机上工作,所以我认为我的webhoster的php设置有问题。有谁知道我可以检查什么?当我问他们时,他们总是告诉我这不是他们的错 - -_-

修改

你问过代码,我没有发布,因为它非常复杂(Shopware插件),但我想我可以提取重要的部分:

HTML(Smarty):

<form method="post" action="{url action=saveRegister}" enctype="multipart/form-data">

PHP(在我的事件处理程序中):

file_put_contents('ul.log',serialize($_FILES));

结果(var_dumped unserialized):

array(0) {}

完整表单HTML:http://pastebin.com/Wq1yBTux

2 个答案:

答案 0 :(得分:1)

发现错误:框架的某些“安全功能”已“清理”$ _POST,因此move_uploaded_file无法检查文件是否已正确上传

答案 1 :(得分:0)

安装Firebug(请参阅网络标签页)或Livehttpheaders以查看您的文件是否实际发送到服务器以及浏览器是否正确发送了HTTP标头。

出于任何原因它们可能是错误的(不允许使用Content-Type,不允许使用POST方法)

它应该为您提供要查看的数据和要检查的配置参数。