J'essaie de comprendre comment obtenir cette forme de zend à valider. Je ne comprends pas:ne peut pas comprendre comment valider zend_form
Les arguments addValidator() sont-ils des validateurs spécifiques? Y a-t-il une liste quelque part de ces validateurs?
J'ai ce dans les formes/contact.php:
Application_Form_Contact classe étend Zend_Form {
public function init()
{
$this->setAction('index/process');
$this->setMethod('post');
$name = new Zend_Form_Element_Text('name');
$name->setLabel('Name:');
// $name->addValidator('alnum');
$name->setRequired(true);
$email = new Zend_Form_Element_Text('email');
$email->setLabel('Email:')->setRequired(true);
$confirm = new Zend_Form_Element_Text('confirm');
$confirm->setLabel('Confirm Email:')->setRequired(true);
$phone = new Zend_Form_Element_Text('phone');
$phone->setLabel('Phone:')->setRequired(true);
$subject = new Zend_Form_Element_Select('subject');
$subject->setLabel('Subject:')->setRequired(true);
$subject->setMultiOptions(array('Performance'=>'Performance',
'Workshop'=>'Workshop',
'Other'=>'Other'
));
$message = new Zend_Form_Element_Textarea('message');
$message->setLabel('Message:')->setRequired(true);
$message->setAttrib('rows','6');
$message->setAttrib('cols','30');
$submit = new Zend_Form_Element_Submit('Submit');
$this->addElements(array( $name,
$email,
$confirm,
$phone,
$subject,
$message,
$submit
));
$this->setElementDecorators(array
('ViewHelper',
array(array('data' => 'HtmlTag'), array('tag' => 'td')),
array('Label' , array('tag' => 'td')),
array(array('row' => 'HtmlTag') , array('tag' => 'tr'))
));
$submit->setDecorators(array('ViewHelper',
array(array('data' => 'HtmlTag'), array('tag' => 'td')),
array(array('emptyrow' => 'HtmlTag'), array('tag' => 'td', 'placement' => 'PREPEND')),
array(array('row' => 'HtmlTag') , array('tag' => 'tr'))
));
$this->setDecorators(array(
'FormElements',
array('HtmlTag' , array('tag' => 'table' , 'class' => 'formTable')),
'Form'
)
);
}
}
mon contrôleur est:
public function indexAction()
{
$this->view->form = new Application_Form_Contact();
}
public function processAction()
{
// $this->view->form = new Application_Form_Contact();
//
if ($this->_request->isPost()) {
$formData = $this->_request->getPost();
// echo 'success';
$this->view->data = $formdata;
} else {
// $form->populate($formData);
}
}
Je suis un débutant , donc je fais probablement des erreurs évidentes que je ne vois pas. Je suis en train de faire la validation de base:
- tous les champs doivent être remplis
- tous les fichiers html se dépouilla
- email et confirmer
- champs e-mail doit correspondre
- email doit être au format valide.
Toute aide serait grandement appréciée!
Eh bien, si j'avais les validateurs appropriés alors il serait peut-être savoir si c'est valide, mais je ne sais pas comment utiliser les addValidators() – Joel
@Iznogood nice-merci! Pouvez-vous me montrer une liste des validateurs? J'ai cherché haut et bas. – Joel
@Joel Edité à nouveau. De là, vous pouvez toujours rechercher google pour les validateurs de formulaire zend et continuer à partir de là. Beaucoup d'informations là-bas. – Iznogood