Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
J'ai un petit soucis concernant zend_form, cela fait un moment que je cherche et impossible.
Je m'explique, c'est tout simple :
J'essaye de valider un élément de mon formulaire (un champ texte), qui peut être vide ou non en fonction d'un autre element du formulaire.
Pour cela, le principe semble evident : je créer un validateur perso dans lequel j'utilise le $context pour le valider, sauf que quand mon champ est vide, le validateur ne se déclenche pas.
J'ai bien lu qu'il fallait mettre un setRequired, sans ça, si la valeur du champ était vide, il considére que le champ n'existe pas et de déclenche donc pas les validateurs.
Comment puis-je faire pour faire en sorte que même si mon champ n'est pas "required", mes validateur soient quand même appliqués ?
Aucune autre solution a part peut etre ré ecrire la fonction isValid de Zend_Form ?
Par ailleurs, a noter que je génère mes formulaires avec des fichiers Zend_Config_Ini
Par avance merci
Dernière modification par gostbuster (23-03-2012 11:27:15)
Hors ligne
J'ai résolu mon problème après avoir fouillé un peu le code de la class Zend_Form_Element :
Il existe aussi un flag allowEmpty qui permet de décider aussi si oui ou non malgrès la valeur vide on doit déclencher les validateurs.
de ce fait deux solution pour que si la valeur est vide les validateurs soient quand même déclenches :
1/
on met required à true, et allowEmpty à true
2/
on met simplement allowEmpty à false
Voilà
En espérant pouvoir en aider certains
A+
Hors ligne
Pages: 1