Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
controler:
function addchapitreAction()
{
$this->view->title = "Ajouter un nouveau chapitre";
$form = new FormChapitre();
$form->submit->setLabel('Ajouter');
$this->view->form = $form;
}vue:
<?php echo $this->form ;?>
j'ai 1 bug: si j'affiche le formulaire dans la vue
il apparait 2 fois ...
une explication ?
Hors ligne
Fais voir le code de la classe FormChapitre stp.
Hors ligne
voilou ::
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
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)
Hors ligne
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
fais voir ton controlleur index et chapitre en entier stp....
Je suis pas sur de comprendre comment tu as structuré le truc.
-
Hors ligne
n'aurait pas tu mis un render dans ton contrôleur ?
A+JYT
Hors ligne
voila le script indexcontroller en entier ...
<?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