Chargement de contrôleur avec bootstrap
Bonjour,
je suis en stage, je viens de débuter avec Zend Framework.
Je l'ai téléchargé, installé et configuré en suivant quelques tutoriels du web et le livre 'les cahiers du programmeur '.
voici mon architecture :
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 38 39 40
| reservationSalled-zf
index.php
application
config
Zend_Config_Ini.ini
controllers
LoginController.php
models
views
scripts
connexion
login.phtml
errors
404.phtml
500.phtml
index
library
zend
public
css
images
js |
1) Voici le contenu de mon fichier bootstrap 'index.php' du repertoire 'reservationSalles-zf' :
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 38 39 40 41
| <?php
//on définit le chemin de notre application
define ( 'APPLICATION_PATH', realpath ( dirname ( __FILE__ ) . '/./' ) );
//utilisation de Zend_Loader_Autoloader
require_once 'Zend/Loader/Autoloader.php';
//appel de controleur
try {
//getInstance() est utilisé pour récupérer une instance du contrôleur frontal.
$front = Zend_Controller_Front::getInstance();
//le contrôleur frontal renvoie les exceptions qu'il a rencontrées
//à l'objet de réponse, nous offrant une possibilité élégante de les gérer.
$front->throwExceptions(true);
//setControllerDirectory() est utilisé pour
//chercher les fichiers de
//classes de contrôleurs d'action.
$front->setControllerDirectory(APPLICATION_PATH.'/application/controllers');
//Dispatch lance notre application, fait le gros travail du contrôleur frontal.
//Il peut facultativement prendre un objet de requête et/ou un objet de réponse,
//permettant ainsi au développeur de fournir des objets personnalisés.
$front->dispatch();
//Traite les exceptions du contrôleur (généralement 404)
} catch (Zend_Controller_Exception $e) {
include APPLICATION_PATH.'/application/views/scripts/errors/404.phtml';
//Traite les autres exceptions du contrôleur
} catch (Exception $e) {
include APPLICATION_PATH.'/application/views/scripts/errors/500.phtml';
} |
2) voici le contenu du controlleur LoginController.php
Code:
1 2 3 4 5 6 7 8
| <?php
class LoginController extends Zend_Controller_Action
{
function init()
{
$this->view->title = "Connexion";
}
} |
je rencontre une erreur, je ne sais pas exactement ce que c'est mais je pense qu'il n'arrive pas à charger le controlleur que j'ai créé.
il m'affiche le message d'erreur que j'ai dans 404.phtml.
Merci de me répondre si vous avez une solution, je suis vraiment embêté.
[Basket] ta Solution de Zend Application ?
salut Basket,
Peux tu m'expliquer le principe de Zend Application que toi tu utilise, est ce qu'il s'installe avec la configuration toute faite et il suffira d'ajouter ses controlleurs models et vues?
J'attends ta reponse por voir si je vais arreter avec la config manuel et opter pour ça, puisque j'ai passé beaucoup de temps dessus sans piste pour les erreurs.
Merci pour ton aide.
probleme de chargement de controlleur resolu
Merci MaitrePylos,
en fait j'avais tenté une autre alternative avec Zend_Tool, avec un bon tutoriel.
Lui crée toute l'architecture de l'application et fait les fichiers (bootstrap et config), après tu n'as plus qu'à ajouter tes actions et vues. C'est ce qui m'a permis de savoir qu'il fallait ajouter une action/methode du meme nom que la vue après l'avoir initialiser dans la méthode init(), pour appeler la vue.
Mais ta solution est bienvenue, merci.
Voici le tutoriel que j'ai suivi pour Zend_Tool et ça marche !!
http://akrabat.com/wp-content/uploads/Getting-Started-with-Zend-Framework.pdf