Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 23-03-2012 11:10:54

gostbuster
Membre
Date d'inscription: 11-03-2009
Messages: 160

[RESOLU] element "required" selon le contexte (conditionnel)

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)


Gostbuster - Développeur WEB

Hors ligne

 

#2 23-03-2012 11:29:14

gostbuster
Membre
Date d'inscription: 11-03-2009
Messages: 160

Re: [RESOLU] element "required" selon le contexte (conditionnel)

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+


Gostbuster - Développeur WEB

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