Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 24-04-2009 11:55:17

forevermoon
Membre
Date d'inscription: 10-04-2009
Messages: 45

un formulaire rendu 2 fois ...

controler:

Code:

                        function addchapitreAction()
                {
            $this->view->title = "Ajouter un nouveau chapitre";
            $form = new FormChapitre();
            $form->submit->setLabel('Ajouter');
            $this->view->form = $form;
                        }

vue:

Code:

<?php echo $this->form ;?>

j'ai 1 bug: si j'affiche le formulaire dans la vue
il apparait 2 fois ...

une explication ?

Hors ligne

 

#2 24-04-2009 11:59:06

gostbuster
Membre
Date d'inscription: 11-03-2009
Messages: 160

Re: un formulaire rendu 2 fois ...

Fais voir le code de la classe FormChapitre stp.


Gostbuster - Développeur WEB

Hors ligne

 

#3 24-04-2009 12:02:52

forevermoon
Membre
Date d'inscription: 10-04-2009
Messages: 45

Re: un formulaire rendu 2 fois ...

voilou ::

Code:

class FormChapitre extends Zend_Form
{
    public function __construct($options = null)
    {
    parent::__construct($options);
    $this->setName('chapitre');
    $id = new Zend_Form_Element_Hidden('id');
    $num = new Zend_Form_Element_Text('num');
    $num->setLabel('Num')
    ->setRequired(true)
    ->addFilter('StripTags')
    ->addFilter('StringTrim')
    ->addValidator('NotEmpty');
    $num->setAttrib('class','inputMail');
    
    $nom = new Zend_Form_Element_Text('nom');
    $nom->setLabel('Nom')
    ->setRequired(true)
    ->addFilter('StripTags')
    ->addFilter('StringTrim')
    ->addValidator('NotEmpty');
    $nom->setAttrib('class','inputMail');
    
    $inactif = new Zend_Form_Element_Checkbox('Inactif');
    $inactif->setLabel('Inactif');
    
    
    $submit = new Zend_Form_Element_Submit('submit');
    $submit->setAttrib('id', 'submitbutton');
    $submit->setAttrib('class', 'boutonMail');
    
    
    $num->addDecorator('Label', array('tag' => 'div', 'class' => "labelProfil"));    
    $nom->addDecorator('Label', array('tag' => 'div', 'class' => "labelProfil"));    
    
    $this->addElements(array($id, $num, $nom, $inactif, $submit));
    }
}

Hors ligne

 

#4 24-04-2009 12:08:31

gostbuster
Membre
Date d'inscription: 11-03-2009
Messages: 160

Re: un formulaire rendu 2 fois ...

Je viens de tester, chez moi il apparait qu'une seule fois......

Ta essayé avec un autre formulaire ?

Dernière modification par gostbuster (24-04-2009 12:09:26)


Gostbuster - Développeur WEB

Hors ligne

 

#5 24-04-2009 12:12:05

forevermoon
Membre
Date d'inscription: 10-04-2009
Messages: 45

Re: un formulaire rendu 2 fois ...

intéressant ...
ma function addchapitreAction()
se trouve dans mon fichier
IndexController ...
peut  etre je dois créer une action ailleurs ...
dans addchapitreController.php ?

Hors ligne

 

#6 24-04-2009 13:10:42

gostbuster
Membre
Date d'inscription: 11-03-2009
Messages: 160

Re: un formulaire rendu 2 fois ...

fais voir ton controlleur index et chapitre en entier stp....
Je suis pas sur de comprendre comment tu as structuré le truc.
-


Gostbuster - Développeur WEB

Hors ligne

 

#7 24-04-2009 13:21:47

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: un formulaire rendu 2 fois ...

n'aurait pas tu mis un render dans ton contrôleur ?

A+JYT

Hors ligne

 

#8 24-04-2009 14:02:02

forevermoon
Membre
Date d'inscription: 10-04-2009
Messages: 45

Re: un formulaire rendu 2 fois ...

voila le script indexcontroller en entier ...

Code:

<?php
class Admin_IndexController extends Zend_Controller_Action
{

        public function init()
        {   
        $this->_helper->layout()->setLayout('admin'); 
        $this->view->num = (int)$this->_request->getParam('num', 0);    
        //$auth = Zend_Auth::getInstance();
        $user = Zend_Auth::getInstance()->getIdentity();
        $this->view->user = $user;
            if ((isset($user)) && ($user->real_name == "admin"))
            {
            $this->_helper->actionStack('nav','nav');
            }
        $this->_helper->actionStack('login','login');
        }

        function indexAction()
        {            
            $this->view->Titre = "index action";
            $this->_redirect('/admin/index/connection/');
        }
    

        function connectionAction()
        {        
            $this->view->Titre = "Connection page";
        }
        
        function chapitreAction()
        {        
            $this->view->Titre = "chapitre admin";
            $chapitres = new tablechapitre();
            $this->view->chapitres = $chapitres->fetchAll();   
        }
        
        function addchapitreAction()
        {
            $this->view->title = "Ajouter un nouveau chapitre";
            $form = new FormChapitre();
            $form->submit->setLabel('Ajouter');
            $this->view->form = $form;
            if ($this->_request->isPost()) {
            $formData = $this->_request->getPost();
                if ($form->isValid($formData)) {
                $chapitres = new tablechapitre();
                $row = $chapitres->createRow();
                $row->num = $form->getValue('num');
                $row->nom = $form->getValue('nom');
                $row->inactif = $form->getValue('inactif');
                $row->save();
                $this->_redirect('/admin/index/chapitre');
                } else {
                $form->populate($formData);
                }
            }
        }
        function editchapitreAction()
        {
            $this->view->title = "Modifier un chapitre";
            $form = new FormChapitre();
            $form->submit->setLabel('Enregistrer');
        }
        
        function pageAction()
        {        
            $this->view->Titre = "page admin";
        }
    
        function footerAction()
        {    
            $this->view->titlefooter = "footer";
        }
        
        

    
}

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