Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Voila j'ai un gros souci,
J'ai décider de découper mon appli de la manière suivante,
jusque la rien de bien sorcier je me suis inspirer de ce que j'ai pu lire à droite a gauche sur le sujet mon PROBLEME est la redirection a premiere vu
car je peux :
- acceder a mon acceuil (avec url://ip_du_site/nom_du_site/ et url://ip_du_site/nom_du_site/default)
(c'est une page de connection avec un formulaire qui va bien)
Lorsque je me connecte il me redirige vers l'index de l'administrateur(par exemple) mais avec l'adresse url://ip_du_site/nom_du_site, je m'attendais a ce qu'il mette le nom du module/:controller/:action soite url://ip_du_site/nom_du_site/administrateur.
Je vous montre le bootstrap qui est en construction
<?php /* ----------------------------------------------------------------- Information de base , le PATH, l'autoload, les erreurs, la création de session. ----------------------------------------------------------------- */ // pour le developpement error_reporting(E_ALL|E_STRICT); // la date date_default_timezone_set('Europe/Paris'); set_include_path('.' . PATH_SEPARATOR . './framework' . PATH_SEPARATOR . './modules/default/models' . PATH_SEPARATOR . './modules/default/filters' . PATH_SEPARATOR . get_include_path()); // Importation de classes require_once "Zend/Loader.php"; // Zend_Loader::registerAutoload(); /* ----------------------------------------------------------------- Creation du registre ----------------------------------------------------------------- */ require_once "Zend/Registry.php"; $registry = Zend_Registry::getInstance(); /* ----------------------------------------------------------------- Chargement de la configuration des répertoires et création des variables de registre ----------------------------------------------------------------- */ require_once "Zend/Config/Ini.php"; $site = new Zend_Config_Ini('./config/config.ini', 'site'); // chemin vers racine du site define('MODULE_PATH', './modules'); // chemin vers racine par défault define('DEFAULT_PATH', './modules/default'); // chemin vers moteur application define('LIBRARY_PATH', '/librairie'); /* ----------------------------------------------------------------- Gestion de l'authentification ----------------------------------------------------------------- */ require_once "Zend/Auth.php"; $auth = Zend_Auth::getInstance(); $droit = 'default'; if ($auth->hasIdentity()) { $droit = strtolower($auth->getIdentity()->TAB_PROFI_TYPEPROFILE_08); } Zend_Registry::set('NOM_SITE', $site->site->nom); Zend_Registry::set('LOG_SITE', $site->site->log); Zend_Registry::set('REP_PUBLIC', $site->site->base.LIBRARY_PATH); Zend_Registry::set('REP_SITE', '.'); /* ----------------------------------------------------------------- Chargement de la configuration de la base de donnee ----------------------------------------------------------------- */ require_once "Zend/Config/Ini.php"; $bdd = new Zend_Config_Ini('./config/config.ini', 'bdd'); $registry->set('config', $bdd); // L'accès à la base par le PDO et pour le mapping require_once "Zend/Db.php"; require_once "Zend/Db/Table.php"; $db = Zend_Db::factory($bdd->db->adapter, $bdd->db->config->toArray()); Zend_Db_Table::setDefaultAdapter($db); Zend_Registry::set('DB_ADAPTER', $db); /* ----------------------------------------------------------------- Creation du controleur ----------------------------------------------------------------- */ require_once "Zend/Controller/Front.php"; require_once "Zend/Controller/Request/Http.php"; require_once "Zend/Controller/Router/Rewrite.php"; require_once 'Zend/Controller/Dispatcher/Standard.php'; require_once "My/Controller/Front.php"; try { // Zend_Auth::getInstance()->clearIdentity(); // MVC $config = new Zend_Config_Ini('./config/config.ini','layout'); /* ----------------------------------------------------------------- Chargement de la configuration de la page (layout) ----------------------------------------------------------------- */ require_once "Zend/Layout.php"; $options = array( 'layout' => 'layout', 'layoutPath' => '/modules/'.$droit.'/views/scripts', 'contentKey' => 'contenu'); Zend_Layout::startMvc($options); // activation des layouts $frontController = My_Controller_Front::getInstance(); $router = new Zend_Controller_Router_Rewrite(); $router = $frontController->getRouter(); $router->addRoute( "default", new Zend_Controller_Router_Route( "/:module/:controller/:action/", array( "module"=>"default", "controller"=>"index", "action"=>"login") ) ); $router->addRoute( "administrateur", new Zend_Controller_Router_Route( "/:module/:controller/:action/", array( "module"=>"administrateur", "controller"=>"index", "action"=>null) ) ); $frontController->setParam('noErrorHandler',true) ->setBaseUrl($site->site->base) ->throwExceptions(true) ->setDispatcher(new Zend_Controller_Dispatcher_Standard()) ->setRequest(new Zend_Controller_Request_Http()) ->addModuleDirectory(MODULE_PATH) ->setControllerDirectory(MODULE_PATH.'/'.$droit.'/controllers') ; $frontController->setRouter($router); //throw new InvalidArgumentException($frontController->getBaseUrl()); // $frontController->setParam('useDefaultControllerAlways', true); // $frontController->run(MODULE_PATH.'/'.$droit.'/controllers'); $frontController->dispatch(); } catch (Exception $e) { throw new Exception( ' Ligne : '.$e->getLine() .' Code : '.$e->getCode() .' Message : '.$e->getMessage() .' Trace : '.$e->getTrace() .' Trace 2 : '.$e->getTraceAsString()); }
d'ailleur j'ai une autre petite question au sujet du dispatch et du run je prefere utilisé le dispatch je sais pas pourquoi (pas de parametre) lequel choisir? je sais qu'il ne sont pas appeler au meme moment
merci d'avance
Hors ligne
humm..
c'est pas un peu bizarre ca :
>addModuleDirectory(MODULE_PATH) ->setControllerDirectory(MODULE_PATH.'/'.$droit.'/controllers') ;
Hors ligne
Pages: 1