文件元素的自定义错误消息

时间:2013-02-05 11:56:24

标签: zend-framework

我正在尝试向我的文件元素验证程序添加自定义错误消息。它适用于所有元素,但是文件。请指出我哪里出错了。我之前已经问过类似的问题,但我想知道这段代码有什么问题?

    $file= new Zend_Form_Element_File('albumcover');
    $file->setAttrib('size',35)
    ->removeDecorator('label')
    ->removeDecorator('htmlTag');

    $file->setRequired(true)
    ->addValidator('Size',true,'1MB')         
    ->addValidator('Count',true,1)
    ->addValidator('IsImage',true,'jpg,jpeg,png'); 
    $file->addErrorMessage("Upload 'jpg,jpeg or png' file of less than 1MB in size");

它显示预定义错误,而不是我设置的错误消息

1 个答案:

答案 0 :(得分:0)

您可能希望在控制器中执行此操作以检查元素是否有错误并打印特定的错误消息。

$form = My_Form_File();
...
if ($form->isValid()) {
...
} else {
    if ($form->getElement('albumcover')->hasErrors()) {
        $form->getElement('albumcover')->addError("Upload 'jpg,jpeg or png' file of less than 1MB in size");
    }
}

虽然我建议让用户知道

中的说明
$file->setDescription("Upload 'jpg,jpeg or png' file of less than 1MB in size");