我有以下代码来呈现zend表单文件输入
$pd_photo = new Zend_Form_Element_File('photo');
$pd_photo->setDestination(APPLICATION_PATH . '/../uploads');
$pd_photo->setRequired(false);
$pd_photo->setAllowEmpty(true);
$pd_photo->addValidator('Count', false, 1);
$pd_photo->addValidator('Size', false, 2097156672);
$pd_photo->addValidator('Extension', false, 'jpg,jpeg,png,gif,bmp');
$pd_photo->getValidator('Count')
->setMessage('You can upload only one file');
$pd_photo->getValidator('Size')
->setMessage('Your file size cannot upload file size limit of 1 MB');
$pd_photo->getValidator('Extension')
->setMessage('Invalid file extension, only valid image extensions are
(jpg, jpeg, png, gif, bmp) allowed.');
一切正常,但当我将文件归档为空时,它不起作用。 zend form validator返回一个空的错误字符串消息。
我做错了什么?
答案 0 :(得分:1)
这是我的第一个答案,这可能是正确的,因为, 我也曾遇到类似的问题,我看到你已经使用了两个
$pd_photo->setRequired(false);
$pd_photo->setAllowEmpty(true);
在这种情况下,您还应该定义'NotEmpty' => 'false'
尝试为文件元素定义上面的属性,这应该解决你的问题,我的解决了。