Autoloader : impossible de charger mon formulaire
Bonjour,
Je débute dans l'utilisation de ZF. J'ai créé mon application grâce à ZF_Tool, ainsi que mes contrôleurs et actions. J'ai ensuite modifié tout ça, intégré mon layout... Tout ça marche bien.
Par contre ça se gâte quand j'essaie d'intégrer mon formulaire, défini dans le fichier /application/forms/FormContact.php :
Code:
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
|
<?php
class FormContact extends Zend_Form {
public function __contruct($options = null) {
parent::__contruct($options);
$this->setName("contact");
$name = new Zend_Form_Element_Text("name");
$name->setLabel("Nom")
->setrequired(true)
->addFilter("StripTags")
->addFilter("StringTrim")
->addValidator("NotEmpty");
$email = new Zend_Form_Element_Text("email");
$email->setLabel("Adresse e-mail")
->setrequired(true)
->addFilter("StripTags")
->addFilter("StringTrim")
->addValidator("NotEmpty")
->addValidator("EmailAdress");
$message = new Zend_Form_Element_Textarea("message");
$message->setLabel("Votre message")
->setrequired(true)
->addFilter("StripTags")
->addFilter("StringTrim")
->addValidator("NotEmpty");
$submit = new Zend_Form_Element_Submit("submit");
$submit->setAttrib("id", "submitbutton")
->setLabel("Envoyer");
$this->addElements(array($name, $email, $message, $submit)
}
} |
Et quand j'essaie de l'instancier dans mon contrôleur, j'obtiens une page blanche (même pas un message d'erreur).
Code:
1 2 3 4 5 6 7 8
|
public function indexAction()
{
$this->view->title = "Nous contacter";
$form = new FormContact(); // CA PLANTE ICI
$this->view->form = $form;
} |
Voici les fichiers importants de mon application :
application.ini
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
resources.view[] =
resources.db.adapter = PDO_MYSQL
resources.db.params.host = localhost
resources.db.params.username = *****
resources.db.params.password = *****
resources.db.params.dbname = *****
[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.db.adapter = PDO_MYSQL
resources.db.params.host = localhost
resources.db.params.username = *****
resources.db.params.password = *****
resources.db.params.dbname = ***** |
Bootstrap.php
Code:
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
|
<?php
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
/**
* Activate session handling.
*/
protected function _initSession() {
Zend_Session::start();
Zend_Session::setOptions(array('strict'=>'on'));
}
/**
* Activate autoload and defines namespaces.
*/
protected function _initAutoload() {
$moduleLoader = new Zend_Application_Module_Autoloader(array(
'namespace' => '',
'basePath' => APPLICATION_PATH));
return $moduleLoader;
}
/**
* Load configuration file
*/
protected function _initConfig() {
$registry = Zend_Registry::getInstance();
// load config sci.ini
if (! $registry->isRegistered('sci')) {
$sci = new Zend_Config_Ini(APPLICATION_PATH.'/configs/sci.ini', APPLICATION_ENV);
$registry->set('sci', $sci);
}
}
} |
J'avoue que autant la structure présentée dans le tuto d'introduction (mais qui date de la version 1.5) était claire pour moi, autant Zend_Application ne l'est pas :?
Merci d'avance à celui (ou ceux) qui m'aideront à y voir plus clair ici...