Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 09-12-2008 15:54:33

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

[Résolu][1.7] Zend_Form et filter, ca filtre à moitié ?

Bonjour,

Je rencontre un ptit problème avec zend_form et les filtres:

Voilà le code :

Code:

$form = new Zend_Form();
$login = new Zend_Form_Element_Text('login');
$login->setRequired(true)
    ->addFilter('StringToLower')
    ->addValidator('Alnum');
$email = new Zend_Form_Element_Text('email');
$email->setRequired(true)
    ->addFilter('StringToLower')
    ->addValidator('EmailAddress')
    ->addErrorMessage($translator->_("emailAddressInvalid"));
$passw1 = new Zend_Form_Element_Password('passw1');
$passw1->setRequired(true)
    ->addValidator('Alnum')
    ->addValidator('StringLength', false, array(8));

$form->addElements(array($login, $email, $passw1));
$form->setElementFilters(array('StringTrim','StripTags'));

Avec ceci pour le login     ->addFilter('StringToLower') ne marche pas, par contre si je commente la ligne $form->setElementFilters(array('StringTrim','StripTags'));, ->addFilter('StringToLower') est effectué correctement.

Je n'arrive pas à effectuer de filtre général et individuel

Autre chose si j'inverse les 2 lignes plus haut comme ceci :

Code:

$form->setElementFilters(array('StringTrim','StripTags'));
$form->addElements(array($login, $email, $passw1));

aucun filtre n'est effectué.

Merci

Dernière modification par alien7 (09-12-2008 19:21:00)


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#2 09-12-2008 16:03:02

nORKy
Membre
Date d'inscription: 06-03-2008
Messages: 1098

Re: [Résolu][1.7] Zend_Form et filter, ca filtre à moitié ?

attention, tu confonds les types de fonctions add* et set*

Lorsque tu appelles une fonction set* ca n'ajoute pas, mais ça remplace.

De plus, setElementFilters est un raccourci qui place des filtres sur des éléments. Si tu n'as pas enregistrés tes d'éléments, comment veux tu y ajouter des filtres smile


----
Gruiiik !

Hors ligne

 

#3 09-12-2008 16:51:18

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: [Résolu][1.7] Zend_Form et filter, ca filtre à moitié ?

Bah je vois pas comment faire, ce n'est pas possible d'effectuer de filtre général et individuel ?


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#4 09-12-2008 17:29:17

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: [Résolu][1.7] Zend_Form et filter, ca filtre à moitié ?

Hello,

alien7 a écrit:

Bah je vois pas comment faire, ce n'est pas possible d'effectuer de filtre général et individuel ?

D'abord le général et ensuite le particulier (pas l'inverse comme toi).

La fonction addElementFilters n'existe pas. Tu dois pouvoir étendre Zend_Form pour implémenter :

Code:

    public function addElementFilters(array $filters)
    {
        foreach ($this->getElements() as $element) {
            $element->addFilters($filters);
        }
        return $this;
    }

A+

Dernière modification par mikaelkael (09-12-2008 17:35:44)


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#5 09-12-2008 18:04:23

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: [Résolu][1.7] Zend_Form et filter, ca filtre à moitié ?

Impec ca marche, merci mikaelkael smile

Pourquoi cette méthode en'existe pas dans Zend_Form ?

Dernière modification par alien7 (09-12-2008 19:20:30)


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#6 09-12-2008 18:47:07

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: [Résolu][1.7] Zend_Form et filter, ca filtre à moitié ?

Hello,

Bonne question wink

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

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