Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
Je commence mon apprentissage avec Zend_Form en utilisant le tuto sur le site d'akrabat : http://akrabat.com/2008/02/21/simple-ze … -example/.
Dans son controlleur j'ai le code suivant :
$form = new forms_ContactForm(); if ($this->_request->isPost()) { $formData = $this->_request->getPost(); if ($form->isValid($formData)) { echo 'success'; exit; } else { $form->populate($formData); } }
La fonction getPost() me retourne le formulaire. Mais si j'ai besoin de récupérer d'autres variables ou si j'ai plusieurs formulaire Zend_Form sur ma page ?
Merci
Hors ligne
Perso en plus de faire un test avec $this->_request->isPost(), je rajoute un test sur l'existance d'un submit de cette façon:
if ($this->_request->isPost() and $this->_hasParam('validEdit') and $form->isValid($_POST)) { //...c'est ok traitement }
Hors ligne
whitespirit a écrit:
Bonjour,
Je commence mon apprentissage avec Zend_Form en utilisant le tuto sur le site d'akrabat : http://akrabat.com/2008/02/21/simple-ze … -example/.
Dans son controlleur j'ai le code suivant :Code:
$form = new forms_ContactForm(); if ($this->_request->isPost()) { $formData = $this->_request->getPost(); if ($form->isValid($formData)) { echo 'success'; exit; } else { $form->populate($formData); } }La fonction getPost() me retourne le formulaire. Mais si j'ai besoin de récupérer d'autres variables ou si j'ai plusieurs formulaire Zend_Form sur ma page ?
Merci
getPost renvoi toutes tes variables postés, pas un formulaire.
Avec argument, elle te renvoi juste la valeur d'une variable.
Avec 2, le deuxième argument est une valeur par défaut.
array $data = getPost(); $val = $getPost('myval'); $val = $getpost('myval', 'defaultVal');
Hors ligne
Oui, mais pour valider un formulaire, mieux vaut éviter de créer un tableau à la main en regroupant toute les valeurs. Perso j'utilise toujours $_POST... et ça marche très bien car avec le coup du test sur le submit, un form n'est executé que si ce n'est vraiment celui là qui a été soumis. Pour exemple j'ai un page où j'ai 2 forms avec certains name identiques et ça ne pose pas de soucis
Hors ligne
Pages: 1