Voici mon erreur : Fatal error: Using $this when not in object context
Je sais bien que '$this' appartient à une autre méthode de classe.
Voici mes fichiers :
IndexController.php
FormulaireClient.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 <?php require 'Zend/Loader.php'; class IndexController { function ajouterAction() { $this->view->title = "Ajouter un nouvel album"; $form = new FormulaireClient(); $form->submit->setLabel('Ajouter'); $this->view->form = $form; if ($this->_request->isPost()) { $formData = $this->_request->getPost(); if ($form->isValid($formData)) { $albums = new Albums(); $row = $albums->createRow(); $row->artist = $form->getValue('artist'); $row->title = $form->getValue('title'); $row->save(); $this->_redirect('/'); } else { $form->populate($formData); } } } } ?>
Ajouter.phtml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 <?php require 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Form'); class FormulaireClient extends Zend_Form { public function __construct($options = null) { parent::__construct($options); $this->setName('album'); $id = new Zend_Form_Element_Hidden('id'); $artist = new Zend_Form_Element_Text('artist'); $artist->setLabel('Artist') ->setRequired(true) ->addFilter('StripTags') ->addFilter('StringTrim') ->addValidator('NotEmpty'); $title = new Zend_Form_Element_Text('title'); $title->setLabel('Title') ->setRequired(true) ->addFilter('StripTags') ->addFilter('StringTrim') ->addValidator('NotEmpty'); $submit = new Zend_Form_Element_Submit('submit'); $submit->setAttrib('id', 'submitbutton'); $this->addElements(array($id, $artist, $title, $submit)); } } ?>
Si quelqu'un pouvait m'expliquer comment faire afin que je puisse afficher mon formulaire je serais trop content
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?php echo $this->form ; ?>
Merci d'avance les amis![]()
Partager