Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Salut à tous,
j'ai un problème avec la classe Zend_Registry. Voici l'erreur que j'obtiens :
Fatal error: Uncaught exception 'Zend_Exception' with message 'No entry is registered for key 'smarty'' [...]
Voici mon code :
Bootstrap.php
$registry = new Zend_Registry(); $registry->set('smarty', $smarty); [...] $frontController->dispatch();
Voici mon indexController.php
class IndexController extends Zend_Controller_Action { function init() { $smarty = Zend_Registry::get('smarty'); $smarty->assign('title', 'Test'); $smarty->display('index.tpl'); } function noRoute() { $smarty = Zend_Registry::get('smarty'); $smarty->display('error404.tpl'); } }
J'ai recherché pas mal de temps avant de venir ici demander de l'aide et je ne comprends pas le problème que j'ai.
Merci par avance.
edit :
Lorsque je souhaite atteindre /projet/index, il me met l'erreur suivante :
The requested URL /projet/index.tpl was not found on this server.
Dernière modification par Nemesis007 (11-07-2009 18:34:47)
Hors ligne
Hello,
De la même manière que tu fais ton get :
Zend_Registry::set('smarty', $smarty);
A+
Hors ligne
mikaelkael a écrit:
Hello,
De la même manière que tu fais ton get :Code:
Zend_Registry::set('smarty', $smarty);A+
Merci pour ta réponse, mais j'aurai du le préciser dans le mon premier message mais, j'ai déjà testé cette méthode et j'ai toujours la même erreur :
Zend_Loader::loadclass('Zend_Registry'); $smarty = new smarty_test(); Zend_Registry::set('smarty', $smarty); [...] // dispatch here
Zend_Exception' with message 'No entry is registered for key 'smarty''
Dernière modification par Nemesis007 (11-07-2009 19:10:35)
Hors ligne
Si quelqu'un a une idée ou même une hypothèse, je suis preneur.
Merci !
Hors ligne
Le problème avance.
ici : http://localhost/projet/application/bootstrap.php je fais mon set et plus loin un get tout fonctionne bien.
Si je fais un get dans le controller par défaut application\default\controllers\IndexController.php, j'ai bien mon résultat. Pourquoi je ne l'obtiens pas dans mon controller application\controllers\IndexController.php ?
Enfin, j'ai remarqué une autre erreur :
Erreur d'analyse XML : données incompréhensibles après l'élément de document
Emplacement : http://localhost/projet/application/bootstrap.php
Numéro de ligne 2, Colonne 1 :<b>Notice</b>: Zend_Loader::Zend_Loader::registerAutoload is deprecated as of 1.8.0 and will be removed with 2.0.0; use Zend_Loader_Autoloader instead in <b>C:\wamp\www\projet\library\Zend\Loader.php</b> on line <b>207</b><br />
^
Si quelqu'un a les solutions pour ces deux problèmes c'est avec joie que je les testerai
Merci encore
Dernière modification par Nemesis007 (11-07-2009 19:47:17)
Hors ligne
Toujours personne pour m'aider (mise à part mikaelkael) ?
Hors ligne
Le Zend_Loader a un peu évolué depuis la version 1.8 (pour gérer ce qu'on appel "les namespaces"). Potentiellement, tous les tutoriaux traitant d'une version inférieur à cette version provoqueront ce type de message avec une version du framework récente.
Ceci dis, pas de panique. La modif à réaliser est mineur, je te redirige sur ce très bon lien :
http://akrabat.com/2009/04/30/zend_load … mework-18/
Hors ligne