7
votes

Comment définir le message d'erreur d'erreur personnalisé ZEND FORMENT ELEMENT?

Alors j'utilise Zend et j'ai un formulaire Zend avec un Zend_Form_element_file et trois validateurs: 1. Setrequired 2. Extension 3. Taille xxx

Je veux définir des messages d'erreur personnalisés pour ces validateurs, mais ne sais pas comment.

La raison pour laquelle je veux définir un message d'erreur personnalisé est parce que je Avoir un décorateur personnalisé avec lequel je saisis toutes les erreurs lorsque le formulaire n'est pas valide avec ISVALID () et les afficher en haut du formulaire. La méthode pour laquelle j'attrape des erreurs dans la forme est GetterRorors ().

J'ai aussi essayé: Http://www.mail-archive.com/fw-general@lists.zend.com/msg25779.html En faisant: xxx

et faire xxx

n'importe quelle aide?


0 commentaires

3 Réponses :


2
votes
$this->browse = new Zend_Form_Element_File('Browse');
$this->browse->setRequired(true)
             ->removeDecorator('errors')
             ->removeDecorator('label')
             ->addValidator('Extension', true, 'pdf')
             ->addValidator('Size', false, 2000000)
             //->setMessage('You custom message')
             ->addValidator('File_Upload', true, array('messages'=>'You custom message'));

0 commentaires

20
votes

C'est comme ça que j'utilise pour définir le message de validateur personnalisé.

$file = new Zend_Form_Element_File('file');
$file->setLabel('File Label')
     ->setMaxFileSize('512000')
     ->addValidator('Count', true, 1)
     ->addValidator('Size', true, 512000)
     ->addValidator('Extension', true, 'jpg,jpeg,png,gif');

$file->getValidator('Count')->setMessage('You can upload only one file');
$file->getValidator('Size')->setMessage('Your file size cannot upload file size limit of 512 kb');
$file->getValidator('Extension')->setMessage('Invalid file extension, only valid image with file format jpg, jpeg, png and gif are allowed.');


1 commentaires

Merci pour cela! Je chaste pour un moyen de le faire, mais cela n'était pas trop clair dans les documents.



1
votes

Pour ajouter un message personnalisé sur zend_form_element_file, voir le code suivant,

   $browse = new Zend_Form_Element_File('Browse');
   $browse->addValidator('Extension', false, array('pdf',
               'messages'=>array('fileExtensionFalse'=>'file extension is not supported'))
          ->addValidator('Size', false, array(2000000,
                'messages'=>array('filesizefalse'=>'maximum 2000000 supported'));


0 commentaires