Form class in Zend

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Stefan Candan

Stefan Candan

28/07/2011 16:24:44
Quote Anchor link
Ik ben bezig met een eigen zend cms, om zend goed te leren.
Maar ik stuit op een probleempje waar ik niet echt veder mee kom.

Krijg de volgende error:
Quote:
An error occurred
Application error


Meer wordt er niet weergegeven.
het heeft betrekking op deze action:
Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
public function submitAction(){
        $frmBugReport = new Form_BugReportForm();
        $frmBugReport->setAction('/bug/submit');
        $frmBugReport->setMethod('post');
        $this->view->form = $frmBugReport;
    }

?>


ik heb voor deze class een speciaal mapje gemaakt, genaamd forms, deze staat in de applications map

Vervolgens heb ik in de bootstrap.php deze functie er bij gezet om de Form_ namespace te registreren en mijn form te laden
Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
protected function _initAutoload(){
        $autoLoader = Zend_Loader_Autoloader::getInstance();
        $resourceLoader = new Zend_Loader_Autoloader_Resource(array(
            'basePath'        => APPLICATION_PATH,
            'namespace'        => '',
            'resourceTypes'    => array(
                'form' => array(
                    'path'        => 'forms/',
                    'namespace'    => 'Form_',
                )
            ),
        ));

        return $autoLoader;
    }

?>


En vervolgens mijn view(submit.phtml):
Quote:
<h2>Submit a bug report</h2>
<p>To submit a new bug report, please fill in this form completely:</p>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $this->form->render(); ?>


En dit is de Form_BugReportForm():
Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
class Form_BugReportForm extends Zend_Form
    {
        public function init()
        {

            //Author Field
            $author = $this->createElement('text', 'author');
            $author->setLabel('Your name:');
            $author->setRequired(true);
            $this->addElement($author);
            //rest van de elementen heb ik tussen uitgeknipt, die komen allemaal in de zelfde vorm als die van Author.
            //Submit Button

            $this->addElement('submit', 'submit', array('label'=>'Submit'));
        }    
    }

?>

Quote:


Ik zie niet wat ik fout heb gedaan, en de error helpt me ook niet echt bepaald.

-----
Gefixed. Typfoutje in een van de elementen die ik weg geknipt had.
Gewijzigd op 28/07/2011 18:03:16 door Stefan Candan
 
Er zijn nog geen reacties op dit bericht.



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.