Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
mon problème est que j'ai 2 subform dans un form principale avec un seul bouton submit commun.
Lorsque je click sur le bouton seul les valeurs du 1er subform sont passés dans la méthode post.
Pourtant les 2 formulaires subissent bien la validation.
function ajouterAction()
{
$this->view->title = "Ajouter un nouveau Contact";
$form = new Zend_Form();
$formContact = new FormulaireContact();
$formUser = new FormulaireUtilisateur();
$form->addSubForms(array( 'contact' => $formContact,
'utilisateur' => $formUser
));
$submit = new Zend_Form_Element_Submit('submit');
$submit->setLabel('Ajouter')
->setAttrib('id', 'submitbutton');
$form->addElement($submit);
$this->view->form = $form;
if ($this->_request->isPost()) {
$formData = $this->_request->getPost();
if ($form->getSubForm('utilisateur')->isValid($formData)) {
$contacts = SocieteContact::getInstance();
$utilisateur = Utilisateur::getInstance();
$row = $contacts->createRow();
$row2=$societeHasContacts->createRow();
$userData=$form->getSubForm('utilisateur')->getValues();
$contactData=$form->getSubForm('contact')->getValues();
$row->setFromArray($userData);
$row->save();
// $this->_redirect('admin/contact');
} else {
$form->populate($formData);
}
}
}
Hors ligne
Oui pardon c une erreur de copie, c'était pour un test...
Même en faisant $form->isValid($formData)) j'ai le pb
Hors ligne
Je remonte ce topic parce que j'aimerai bien savoir si Enjoy a eu une solution. Je suis en train de valider un formulaire qui contient un subform, mais je ne peux récupérer que les valeurs du form, et non du subform ...
Hors ligne
J'ai abandonner cette utilisation je n'y arrivais pas...
Du coup, j'ai crée 2 formulaires puis un formulaire parent auquel j'ajoutes les éléments des autres formualires (
un truc genre :
$formParent= new Zend_Form();
$form1= new Utilisateur_Form();
$form2= new Adresse_Form();
$formParent->addElements($form1->getElements());
$formParent->addElements($form2->getElements());
Peux importe l'ordre tu peux ensuite faire pareil avec les displayGroups et ca marche...
Sinon tu as le Formulaire Multipage dans le manuel de Zend, il marche plutot pas mal moyennant quelque customization....
Voila Bon courage
Dernière modification par enjoy (13-07-2009 14:32:00)
Hors ligne
Pages: 1