【发布时间】:2014-04-18 03:33:19
【问题描述】:
我有一个 Symfony2 表单,旨在接受上传的 (xml) 文件并将其与实体相关联。与之关联的实体是从 Select 元素中选择的,因此在提交表单时其 ID 包含在 POST 数据中。
一切都很顺利,但是当我尝试上传一个特定的 xml 文件时,Symfony 声称 POST 数据是空的 - 因此出现错误,因为它找不到与上传相关联的实体。
如果我这样做,在我处理表单提交的控制器操作中;
var_dump($request->request->all());
返回“数组:空”
如果我打开 Symfony 调试栏,它会说:
Request POST Parameters
No POST parameters
但是,当我在 Firebug 中监控请求时,我可以看到 POST 数据,这正是我所期望的。那么,POST 数据到哪里去了?
顺便说一下,我使用的是 Symfony 2.3.9。如果重要的话,所有 XML 文件都是有效的 XML。
【问题讨论】:
-
检查您的请求文件包。 $request->files->all()
-
同时检查帖子上限和上传上限。
-
var_dump( $request->files->all() ) 给出“数组为空” - 非常混乱!
-
感谢 Ramesh - 它是“post_max_size” - 在 php.ini 中设置为 8M,文件为 9MB!我以为我会收到一条错误消息,而不是所有 POST 数据都消失了。