2010-12-07 24 views
0

Déconcerté à nouveau. (Zend Framework 1.11.1)zend validateur Zend_Validate_EmailAddress ne fait rien: la configuration du site semble OK, mais probablement pas

Je viens d'ajouter un validateur à un formulaire TRÈS simple, et rien ne se passe lorsque des données invalides sont entrées.

Le code:

$form = new Zend_Form; 
    $form->setAction('/MyController/reponsepage') 
      ->setMethod('post'); 
    $form->setAttrib('id', 'firstTestForm'); 
    $form->addElement('text', 'email', array('label' => 'EMail', 'value' => $this->_user['email'])); 
    $form->addElement('hidden', 'expertID', array('value' => $_targetExpertID)); 
    $form->addElement('submit', 'Submit and Be Free!'); 
    $v = new Zend_Validate_EmailAddress(); 
    $v->setMessage('Please enter a valid email address.'); 
    $mailElem = $form->getElement('email') 
     ->addValidator($v) 
     ->setRequired(true); 

    $this->view->form = $form; 

setRequired semble ne rien faire. Laissant le champ vide et en appuyant sur soumettre va droit à travers. Les données sur les ordures vont également jusqu'au bout.

Aucun message d'erreur, rien.

Le répertoire de la bibliothèque contient:

PATH_BLAH\library\Zend\Validate.php and 
PATH_BLAH\library\Zend\Validate\ with all the normal stuff 

Il est un peu difficile de deviner ce qui pourrait être erroné.

Je serais très obligé pour toute idée qui pourrait vous venir à l'esprit.

Merci d'avoir lu.

Répondre

1

Transmettez-vous les données au formulaire?

if ($this->getRequest()->isPost() 
    && $form->isValid($this->getRequest()->getPost())) { 
    // process form 
} 
+0

C'était la bonne réponse. Désolé je ne suis pas revenu ici assez tôt pour le poster. – confused

0

Phil Brown l'a cloué.

J'avais effectivement négligé de relire le message.

Tête-claque ici ...