Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
C'est encore moi
Voilà, j'avance petit à petit sur mon site et pour l'instant tout ce passe plutôt pas mal !
J'ai maintenant un petit soucis avec un module admin.
Voici l'arbo de mon site :
Mon fichier index.php
<?php date_default_timezone_set('Europe/Paris'); setlocale(LC_ALL, 'fr_FR'); require(dirname(__FILE__) . "/../includes/config/config.conf.php"); include ("Zend/Loader.php"); include ("fonctions.inc.php"); Zend_Loader::registerAutoload(); // CONFIG DU SITE $configSite = new Zend_Config_Ini("config.ini", SECTION_INI); $Registry = Zend_Registry::getInstance(); $Registry -> set('configSite', $configSite); // BDD try { $DB = Zend_Db::factory($configSite -> db); $DB -> getConnection(); Zend_Db_Table::setDefaultAdapter($DB); } catch(Exception $Exeption) { exit($Exeption -> getMessage()); } // MISE EN PLACE DU PROFILAGE DE LA BDD $Registry -> set('DB', $DB); Zend_registry::get('DB') -> getProfiler() -> setEnabled(true); // MISE EN PLACE DU CACHE POUR LES METADONNEEES $frontendOptions = array('lifetime' => 7200, 'automatic_serialization' => true); $backendOptions = array('cache_dir' => CACHE_ZEND_DIR); $cache = Zend_Cache::factory('Core', 'File', $frontendOptions, $backendOptions); Zend_Db_Table_Abstract::setDefaultMetadataCache($cache); // FrontController $frontController = Zend_Controller_Front::getInstance(); $frontController -> setRequest(new Zend_Controller_Request_Http()); $frontController -> throwExceptions(DEBUG); $frontController -> setControllerDirectory( array( 'default' => CONTROLLERS_DIR, 'admin' => MODULES_DIR . '/admin', ) ) include("routes.conf.php"); Zend_Layout::startMvc($configSite -> layout); $actionStack = Zend_Controller_Action_HelperBroker::getStaticHelper('actionStack'); $actionStack -> actionToStack('droite','index'); $actionStack -> actionToStack('nav','index'); try { $frontController -> dispatch(); } catch(Exception $Exeption){ exit($Exeption -> getMessage()); } ?>
Mes chemins sont définis dans le fichier config.conf.php
define("CONTROLLERS_DIR", APP_DIR . "/controllers"); define("MODULES_DIR", APP_DIR . "/modules");
Et le fichier IndexController.php qui se trouve dans le controllers de admin :
<?php class Admin_IndexController extends Zend_Controller_Action { function init () { $this -> _helper -> layout() -> setLayout('gabarit_admin'); } function indexAction () { return; } } ?>
Malheureusement quand je vais sur http://www.monsite.com/admin j'obtiens le message "Invalid controller specified (index)"
J'avoue que là je bloque et je ne vois pas trop ou se trouve le problème...
Merci pour votre aide.
Cordialement,
Kaimite
Dernière modification par Kaimite (24-06-2008 09:54:13)
Hors ligne
Bon,
en fait je viens de trouver
// FrontController $frontController = Zend_Controller_Front::getInstance(); $frontController -> setRequest(new Zend_Controller_Request_Http()); $frontController -> throwExceptions(DEBUG); $frontController -> setControllerDirectory( array( 'default' => CONTROLLERS_DIR, 'admin' => MODULES_DIR . '/admin/controllers', ) )
Il falait juste spécifier le dossier du controller du module
'admin' => MODULES_DIR . '/admin/controllers',
Cordialement,
Kaimite
Hors ligne
Salut
Je crois qu'il te manque cela dans ton index.php pour annoncer où se trouve le répertoire qui contient tes modules :
$frontController ->addModuleDirectory(MODULES_DIR . '/admin');
@+
Hors ligne
En fait, selon ce que j'ai compris, soit je défini mes modules un par un via
$frontController -> setControllerDirectory( array( 'default' => CONTROLLERS_DIR, 'admin' => MODULES_DIR . '/admin/controllers', ) )
Soit j'utilise
$frontController ->addModuleDirectory(MODULES_DIR );
Mais c'est vrai que c'est plus pratique pour les modules suivants, pas besoin de les ajouter à la liste...
Donc voici que que j'ai fait :
$frontController -> setControllerDirectory(CONTROLLERS_DIR); $frontController -> addModuleDirectory(MODULES_DIR);
Bon, ça commence à prendre forme tout ça...
Maintenant passons à l'identification d'une personne sur l'espace d'admin !!!
Hors ligne
Pages: 1