Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 05-06-2009 15:30:14

gu1gui
Membre
Date d'inscription: 12-12-2008
Messages: 11

Pb avec un form et peut etre le layout!?

Bonjour,

Je rencontre un problème que j'ai vraiment du mal a comprendre.

Dans le cadre d'un développement d'un site web, sur mes pages principales j'ai des formulaires qui font des insertions en base etc etc.. Tout fonctionne bien.

Je développe un back office, je change mon layout dans mon controller, puis je commence à construire les différents modules. Simplement je fais des copier coller de mes précédemments formulaires, mais la ca ne fonctionne plus. Je ne recupère plus mes valeurs du formulaire, il m'affiche dans la barre d'adresse les éléments alors qu'en partie public ca ne me le faisait pas..

Code:

class AdminController extends Zend_Controller_Action 
{

    function init(){
        $this->_helper->layout->setLayout('adminlayout');
    }
       
    function indexAction()
    {
        $this->view->title = "Module Accueil";
        $accueil = new Accueil();
        $this->view->accueils = $accueil->getAccueilAll();
        $this->view->form = $this->getFormAccueil();
    }
    
    private function getFormAccueil(){
        
        $this->view->title="ajouter";
        $form = new AcceuilForm();
            echo '<pre>';print_r($form->getValues());echo '</pre>';
        if($this->_request->isPost()){
            $formData = $this->_request->getPost();
            $form->populate($formData);
            $formData=$form->getValues();
            if($form->isValid($formData)){
                $acc = new Accueil();
                $accueil= $acc->createRow($formData);
                if($accueil){
                    $accueil->save();
                }
            }
        }
        return $form;
    }

Code:

class AccueilForm extends Zend_Form
{
    public function __construct($options=null)
    {
        parent::__construct($options);
        $this->setName('ajout accueil');        
        
        //$idUser = new Zend_Form_Element_Hidden('idUsers');

        $titre = new Zend_Form_Element_Text('titre');
        $titre->setLabel('titre')
                ->setRequired(true)
                ->addFilter('StringTrim')
                ->addFilter('StripTags')
                ->addValidator('NotEmpty');
        $resume = new Zend_Form_Element_Text('resume');
        $resume->setLabel('resume')    
                    ->setRequired(True)
                    ->addFilter('StringTrim')
                    ->addFilter('StripTags')
                    ->addValidator('NotEmpty');
        $submit = new Zend_Form_Element_Submit('envoyer');
        $submit->setLabel('envoyer');
        $this->addElements(array($titre,$resume,$submit));
    }

Code:

http://localhost/webspace/public/admin?titre=test&resume=test&envoyer=envoyer

apparemment, en désactivant mon layout et en laissant celui par défaut, ca a l air de fonctionner..

et le code source de ma page généré :

Code:

<form id="ajoutaccueil" enctype="application/x-www-form-urlencoded" action="" method="[b]post[/b]"><dl class="zend_form">
<dt><label for="titre" class="required">titre</label></dt>
<dd>
<input type="text" name="titre" id="titre" value=""></dd>
<dt><label for="resume" class="required">resume</label></dt>
<dd>
<input type="text" name="resume" id="resume" value=""></dd>
<dt>&nbsp;</dt><dd>
<input type="submit" name="envoyer" id="envoyer" value="envoyer"></dd></dl></form>

En faite, mon action est vide, c normal ?

Code:

 action=""

donc evidemment je ne passe jamais dans mon if, et n'affiche pas mon echo

Code:

if($this->_request->isPost()){
            echo "ok";

C'est bizarre

Dernière modification par gu1gui (05-06-2009 15:31:16)

Hors ligne

 

#2 05-06-2009 16:22:33

Djules
Membre
Date d'inscription: 29-03-2009
Messages: 52
Site web

Re: Pb avec un form et peut etre le layout!?

effectivement c'est étonnant. Je n'ai jamais rencontré de problème comme ça pour ma part.

Par contre, que ton attribut "action" soit vide ça c'est normal, à moins que tu lui aies précisé dans ton modèle de formulaire.

Hors ligne

 

#3 05-06-2009 18:37:57

gu1gui
Membre
Date d'inscription: 12-12-2008
Messages: 11

Re: Pb avec un form et peut etre le layout!?

Ok, personne d'autre à d'idée ? Je reste bloqué sur ce point, j'ai surement quelque chose de mauvais qqpart.

Hors ligne

 

#4 05-06-2009 21:10:09

gu1gui
Membre
Date d'inscription: 12-12-2008
Messages: 11

Re: Pb avec un form et peut etre le layout!?

En désactivant la ligne :

     $this->_helper->layout->setLayout('adminlayout');

tout fonctionne très bien, mais avec le layout que je remplace, cela ne fonctionne plus

avez vous une idée ?

Y a t'il une méthode pour appeler un autre layout de manière propre ?

Dernière modification par gu1gui (05-06-2009 21:24:27)

Hors ligne

 

#5 05-06-2009 21:31:58

jrmarmelade
Nouveau membre
Date d'inscription: 05-06-2009
Messages: 2
Site web

Re: Pb avec un form et peut etre le layout!?

moi je pensais à :
$this->_helper->layout()->setLayout('adminlayout');

Mais apparement ça marche sans les parenthèses...

Hors ligne

 

#6 05-06-2009 23:17:34

gu1gui
Membre
Date d'inscription: 12-12-2008
Messages: 11

Re: Pb avec un form et peut etre le layout!?

J'ai testé avec ou sans, le résultat est le même hmm

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages