Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Hello à tous
Apres avoir fait le tuto pour lister les albums, je me suis lancé dans un autre sur les sessions :
http://zendgeek.blogspot.com/2009/07/ze … p-and.html
Mon controller AuthController.php qui se trouve bien dans C:\wamp\www\ZF_OK_Tutoriel\application\controllers
fait donc appel à une class nommée users du fichier Users.php dans C:\wamp\www\ZF_OK_Tutoriel\application\models
Mais il ne la trouve pas
Fatal error: Class 'Users' not found in C:\wamp\www\ZF_OK_Tutoriel\application\controllers\AuthController.php on line 16
La ligne 16 étant donc : $users = new Users();
Qu'est ce qui peut bloquer cet appel de classe ?
Dans les commentaires à la fin, quelqu'un a eu le même probleme et la solution donnée est de rajouter dans le bootstrap :
set_include_path('.' . PATH_SEPARATOR . ROOT_DIR . '/application' . PATH_SEPARATOR . ROOT_DIR . '/application/models' . PATH_SEPARATOR . get_include_path() );
Mais cela me génère des erreurs ...
Notice: Use of undefined constant ROOT_DIR - assumed 'ROOT_DIR' in C:\wamp\www\ZF_OK_Tutoriel\application\Bootstrap.php à chacune des 2 root_dir !
Hors ligne
Bonjour ;
Avez-vous essayer de nommer votre class comme ceci
Users.php :
[lang=php]class Application_Model_Users {}
et bien entendu, l'appel devient:
[lang=php] $userModel = new Application_Model_Users();
Sinon, pouvez-vous nous communiquer le contenu de votre fichier de configuration ?
Note: Oubliez la proposition donnée en commentaire, elle n'est pas bonne.
Dernière modification par nuxwin (11-05-2011 19:04:54)
Hors ligne
Merci Nuxwin de ton aide
Malheureusement, ce doit etre plus grave qu'une simple politique de nommage car l'erreur est la meme
Pour mon fichier de config, c'est celui que tu m'avais donné plus des parametres pour les sessions :
[production] phpSettings.display_startup_errors = 0 phpSettings.display_errors = 0 includePaths.library = APPLICATION_PATH "/../library" bootstrap.path = APPLICATION_PATH "/Bootstrap.php" bootstrap.class = "Bootstrap" appnamespace = "Application" autoloadernamespaces[] = "Zend_" resources.frontController.env = APPLICATION_ENV resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers" resources.frontController.throwExceptions = false resources.frontController.params.displayExceptions = 0 resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts/" ressources.view.doctype = "XHTML1_STRICT" resources.view.charset = "UTF-8" resources.view.contentType = "text/html; charset=utf-8" phpSettings.date.timezone = "Europe/Paris" resources.db.adapter = "pdo_mysql" resources.db.params.charset = "utf8" resources.db.params.host = "localhost" resources.db.params.username = "utilisateur" resources.db.params.password = "utilisateur" resources.db.params.dbname = "tutoriel-zf" resources.db.params.profiler = false resources.db.isDefaultTableAdapter = true ;resources.db.params.persistent = true resources.session.save_path = APPLICATION_PATH "/../data/session" resources.session.use_only_cookies = true resources.session.remember_me_seconds = 864000 resources.session.saveHandler.class = "Zend_Session_SaveHandler_DbTable" resources.session.saveHandler.options.name = "session" resources.session.saveHandler.options.primary.session_id = "session_id" resources.session.saveHandler.options.primary.save_path = "save_path" resources.session.saveHandler.options.primary.name = "name" resources.session.saveHandler.options.primaryAssignment.sessionId = "sessionId" resources.session.saveHandler.options.primaryAssignment.sessionSavePath = "sessionSavePath" resources.session.saveHandler.options.primaryAssignment.sessionName = "sessionName" resources.session.saveHandler.options.modifiedColumn = "modified" resources.session.saveHandler.options.dataColumn = "session_data" resources.session.saveHandler.options.lifetimeColumn = "lifetime" [staging : production] [testing : production] phpSettings.display_startup_errors = 1 phpSettings.display_errors = 1 [development : production] phpSettings.display_startup_errors = 1 phpSettings.display_errors = 1 resources.frontController.throwExceptions = true resources.frontController.params.displayExceptions = 1
Hors ligne
Pages: 1