2014-09-04 46 views
0

我在上传文件时遇到问题,当我转储由$ form-> getData()返回的数据时,文件字段始终为空。此外,如果我做$ this-> getRequest() - > files-> all()我得到一个空的数组()。Symfony2表单文件上传总是为空

这是我的表单类型的字段定义:

->add('card_file', 'file', array(
           'label' => 'Examinar', 
           'required' => false, 
           ) 
) 

这就是我如何打印在.twig文件中的字段:

<fieldset class="fieldset__upload"> 

    {{ form_widget(addressForm.card_file) }} 

</fieldset> 

标签与ENCTYPE创建=” multipart/form-data“,格式为isValid(),文件大小约为4kb,所以我不认为是超过文件大小的问题。

表单未附加到实体,$ form-> getData()正确返回所有其他字段。

任何想法? >文件

+0

你执行$形式 - >提交($要求);或$ form-> handleRequest($ request); ? – skler 2014-09-04 09:24:43

回答

-1

尝试预先感谢您与Symfony2无关。

此表单通过AJAX提交,直到我知道serialize()不发送文件数据。

这完全是问题,我会尽快更新正确的JavaScript代码的答案,只要我能够使其正常工作。

编辑:

我用了jQuery表格插件AJAX上传文件:

http://www.malsup.com/jquery/form/

0

我想我找到了问题,但它并没有 - 这 - $> Request()方法:

$file = $this->getRequest()->files->get('card_file'); 

看看你有什么在这里:

+0

您无法通过AJAX发送文件... – 2014-09-04 09:54:29