Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 03-10-2008 19:46:44

ALkyD
Membre
Lieu: Limoges
Date d'inscription: 11-07-2007
Messages: 69
Site web

Zend_Form et addErrorMessage

Bonjour,

Je suis en train d'essayer une nouvelle fonctionnalité de ZF 1.6.1, qui est l'ajout de messages d'erreurs personnalisés dans le formulaire avec Form::addError.

En fait j'ai l'impression de rencontrer un bug, car utiliser addError (ou addErrorMessage + markAsError) ne change strictement rien à la validation du formulaire...

Code:

$form = new Zend_Form();
...
$text = new Zend_Form_Element_Text('name');
$text->setLabel('Votre texte :');
$text->addError('Erreur !');
$form->addElement($text);
...

Le formulaire ci-dessus, en l'envoyant, renvoie normalement une erreur et n'est donc pas valide. Il n'en n'est rien, ZF fait comme si ce formulaire était valide, ignorant au passant mon erreur personnalisée...

Un bug ? Ou une mauvaise compréhension de la doc ?

Merci wink

Hors ligne

 

#2 19-02-2009 16:44:27

ALkyD
Membre
Lieu: Limoges
Date d'inscription: 11-07-2007
Messages: 69
Site web

Re: Zend_Form et addErrorMessage

Bonjour,

Mon problème n'est toujours pas résolu et j'ai l'impression qu'au fil des versions, le bug ne se résous toujours pas...

Pour que addError() marche, il faut obligatoirement un validateur car ça remplace les messages d'erreurs de ce dernier. Mais selon la description de addError ("Add an error message and mark element as failed validation") qui dit assez clairement que les validateurs ne sont pas concernés, cette méthode devrait ajouter un message d'erreur dans la pile des messages d'erreurs de l'élément, et marquer ce dernier comme étant non valide. Ce qui est bien loin de fonctionner...

Je pourrais très bien créer un validateur personnalisé au lieu d'utiliser addError, mais j'ai certains cas très spécifiques de validation à faire et j'ai pas vraiment envie de m'enquiquiner à créer un validateur qui ne sera utilisé qu'une seule fois. D'où mon intéressement avec addError, puisque je pensais pouvoir faire mon test de validation juste après la création de l'élément, et le rendre éventuellement invalide au cas où... Mission impossible.

Et vous, comment faites-vous pour vos cas de validation très spécifiques ? Zend_Validate ?

Dernière modification par ALkyD (19-02-2009 16:46:54)

Hors ligne

 

#3 22-05-2009 16:49:06

tamildark
Membre
Date d'inscription: 09-04-2009
Messages: 26

Re: Zend_Form et addErrorMessage

salut,
je rencontre le même probléme. Quand je fais addError, il me remplace tous les messages d'erreur de validator si il existe sinon il ne fais rien.
Aprés vérification d'un formulaire dans le controleur comment ajouter un message d'erreur pour un element du formulaire?
Merci de m'aider

Hors ligne

 

#4 28-07-2010 18:12:23

sguary
Membre
Lieu: Rennes
Date d'inscription: 23-02-2009
Messages: 15
Site web

Re: Zend_Form et addErrorMessage

$form->addDecorator('Errors');

Ce bout de code devrait solution l'affichage du message d'erreurs

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages