Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
J'ai actuellement un controller dédié à la validation de mes formulaires.
Il se présente ainsi :
class ValidationController extends Zend_Controller_Action
{
      public function validation1Action()
      {
             $validNotEmpty = new Zend_Validate_NotEmpty();
             $validAlnum = new Zend_Validate_Alnum();
             $validPseudoLength = new Zend_Validate_StringLength(array('min' => 2, 'max' => 16));
             $validPseudoExist = new Zend_Validate_Db_NoRecordExists(array 'table'=>'hl_joueurs','field'=>'joueur_login'));
             $validPasswordLength = new Zend_Validate_StringLength(array('min' => 6, 'max' => 30));
             $validEmail = new Zend_Validate_EmailAddress();
             $validEmailExist = new Zend_Validate_Db_NoRecordExists(array('table'=>'hl_joueurs', 'field'=>'joueur_email'));
               // controle formulaire1
      }
      public function validation2Action()
      {
             $validNotEmpty = new Zend_Validate_NotEmpty();
             $validAlnum = new Zend_Validate_Alnum();
             $validEmail = new Zend_Validate_EmailAddress();
             $validEmailExist = new Zend_Validate_Db_NoRecordExists(array('table'=>'hl_joueurs', 'field'=>'joueur_email'));
             // controle formulaire2          
      }
      // etc ....
}Il y a-t-il un moyen de déclarer tous mes validateurs une seule fois dans le controller et de pouvoir les utiliser dans les actions le demandant afin d'éviter la répétition de validateurs ?
Merci d'avance ;) !
Hors ligne
Oui, dans la fonction init du controller, elle sera automatiquement appelée par le constructeur de Zend_Controller_Action et te permet de déclarer les validateurs que tu réutilises partout.
Mais pense à Zend_Form pour ce genre de choses, ça rend le code bien plus propre.
Hors ligne
Pages: 1