当可选文件elem时,form isValid()返回false。存在于zend中

时间:2011-04-06 03:50:41

标签: php zend-framework zend-form zend-form-element

在控制器isValid面临问题。

if ($form->isValid($formdata)) 

这是我的Code Zend_Form代码

$document = $this->addElement('file','orglogo');
    $document = $this->getElement('orglogo')                    
                      ->removeDecorator('label')
                      ->addValidator('Extension', false, array('jpg,png,gif,jpeg'))
                      ->setRequired(true)
                      ->addErrorMessage('Please upload a valid File  (jpg,png,gif,jpeg)');

显示错误

文件'orglogo'超出定义的ini大小

如何解决此错误。


Hurrrrrrrrrrrrrray !!!

最后我得到了解决方案。

在表单中添加enctype =“multipart / form-data”。

希望这会对某人有所帮助。

Cheeeeeeeers, Sathish所在

2 个答案:

答案 0 :(得分:0)

如果表单错误数组为空,那么从数据设置元素的值可能会出现问题。

couchdb中的列名是否与表单中元素的名称相匹配?如果没有,那么它可能甚至没有尝试验证每个元素,因为分配元素的值是失败的。

答案 1 :(得分:0)

当用户提交表单时,如果用户没有选择任何文件,则$data['filename_element']不存在,但如果您获取数据库行,则总是会有一个长度为0 $data['filename_element']的字符串。

对用户提供的数据和数据库行执行exit(var_dump($data));,您将看到差异。 附: 'filename_element'需要替换为文件元素的ID。