0

ファイル要素バリデーターにカスタムエラーメッセージを追加しようとしています。それはすべての要素、しかしファイルのために働いています。私がどこで間違っているのかを親切に指摘してください。以前に同様の質問があったことは知っていますが、このコードの何が問題なのか知りたいですか?

    $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");

設定したエラーメッセージではなく、事前定義されたエラーが表示されます

4

1 に答える 1

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"); 
于 2013-02-05T13:00:57.803 に答える