Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
bonjour à tous
je débute tout juste avec la Zend, et je m'y perd un peu
J'ai fait le tour du forum et y trouvé pas mal de réponse mais pas facile de les implémenter ...
j'ai intégrer Zend_Form();
mais pas possible de bien la faire fonctionner malgrés le beau tuto de Tuto Zend_Form bien fait (EN)
donc retour sur Zend_Filter_Input qui fonctionne mais le message d'erreur de retour c'est :
<pre>array(1) { ["question49"] => array(1) { [0] => string(21) "'' is an empty string" } } </pre>
comment n'obtenir que : is an empty string
ou bien mieux récuperer mon messages d'erreur
voici mon code :
<?....
$filters = array(
'question49' => 'StringTrim'
);
$validators = array(
'question49' => array(
'alpha',
'presence' => 'required',
'messages' => 'A month must consist only of digits'
)
);
$data = $_POST;
$input = new Zend_Filter_Input($filters, $validators, $data);
if ($input->hasInvalid() || $input->hasMissing()) {
$retour= $input;
}
else {
....
?>
sur la doc de la zend j'avais cru comprendre que je pouvais récupérer mon message avec :
echo $input->question49->messages;
Mais là je suis carrément à l'ouest
tout aide est la bienvenue
merci
Hors ligne
J'ai repris Zend_Form();
et voici l'erreur qu'il me met
library/Zend/View/Abstract.php on line 782
Hors ligne
je n'ai pas encore eu l'occasion d'utiliser des filtres mais t'as essayé comme ça :
foreach ($input->getMessages() as $messageId => $message) {
echo "Validation failure '$messageId': $message\n";
}
Hors ligne
merci white
voici le resultat
ArrayValidation failure 'question3': Array
au moins je recupere le name du champ du formulaire seulement le dernier
plus demonstratif voici mon code avec ton apport :
if ($this->_request->isPost()) { $filters = array( 'question1' => 'StringTrim' ); $validators = array( 'question1' => array( 'alpha', 'presence' => 'required', 'messages' => 'A month must consist only of digits' ) ); $filters = array( 'question2' => 'StringTrim' ); $validators = array( 'question2' => array( 'alpha', 'presence' => 'required', 'messages' => 'A month must consist only of digits' ) ); $filters = array( 'question3' => 'StringTrim' ); $validators = array( 'question3' => array( 'Alnum', 'presence' => 'required', 'messages' => 'A month must consist only of digits' ) ); $data = $_POST; $input = new Zend_Filter_Input($filters, $validators, $data); if ($input->hasInvalid() || $input->hasMissing()) { $message.="<br><br>"; //$message.=Zend_Debug::dump($input->getMessages()); foreach ($input->getMessages() as $messageId => $message) { $message.="Validation failure '$messageId': $message\n"; } } else{ ....
Hors ligne
Pages: 1