Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour tout le monde,
voici mon problème.
Je suis sur le controlleur "Controles" et j'ai une action "index".
Sur cette page se trouve un lien thickbox, qui m'ouvre un formulaire.
Jusque là, tout va bien.
Je veux qu'une fois ce formulaire rempli, et le bouton appuyer, j'ai les actions suivantes qui s'effectuent :
Envoie des données dans la BDD (çà, çà marche).
Fermeture du thickbox (çà çà marche).
Rechargement de la page parent (çà, çà marche pas... le controle que j'ai ajouté n'apparait pas, et l'url n'a pas changé (je me suis amuser à enlever un param avec un redirect)).
Je vous donne le code associé :
(Enfin un bout du controlleur)
if ($this->getRequest()->isPost()) { if ($form->isValid($this->getRequest()->getPost())) { $mat_id = $carnet->Matid; $cls_id = $carnet->Clsid; $controle = new Application_Model_Controles($form->getValues()); //$controle->setCoefficient($coeff); $controle->setMatid($mat_id); $mapper = new Application_Model_ControlesMapper(); $mapper->save($controle); //return $this->_helper->redirector($url); return $this->_helper->redirector->gotoSimple('index', 'Controles', null, array('mat_id' => $mat_id, 'carnet_id' => $carnet_id, 'per_id' => $form->getValue('Perid'), )); $this->_helper->redirector('index', 'Controles', '', array('carnet_id' => $form->getValue('carnet_id'))); } }
Je sais, il y a 2 redirect, j'ai essayé les 2, aucun ne me rechargent ma page.
Le code de mon formulaire :
$submit = new Zend_Form_Element_Submit('submit'); $submit->setAttrib('onclick', 'self.parent.tb_remove();'); $submit->setLabel('Ajouter'); $this->addElement($submit);
J'ai volontairement mis que la fin du formulaire, car le reste n'a pas d'importance.
Et dans la vue :
<a href="<?php echo BASEURL.'Controles/add/carnet_id/'.$this->carnetid.'?KeepThis=true&TB_iframe=true&height=400&width=600modal=true'; ?>" class="thickbox">Test</a>
Le lien pour ouvrir la fenêtre, même si je doute que çà soit utile, car cette partie çà marche.
Je pense que mon problème vient de mon controlleur.
La redirection doit se faire dans la thickbox, et non dans la partie principale.
Et vu que juste derrière, je ferme la thickbox avec le onclick du bouton du formulaire.
Donc ma question est :
Comment faire pour que çà soit ma page derrière qui soit rechargé (d'ailleurs peut etre avec un léger délai histoire d'être sur que l'insertion dans la BDD soit correcte, et qu'il me charge bien les données voulues dans la vue).
Voila, merci d'avance.
Hors ligne