Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 03-05-2012 15:03:24

-kimi-
Nouveau membre
Date d'inscription: 03-05-2012
Messages: 1

Problème réécriture URL

Bonjour à tous,

Voilà je voulais introduire la réécriture d'URL sur mon site mais dès la première route que j'essaie de modifier, ça ne marche pas.

J'utilise un fichier routes.ini avec toutes mes routes définies dedans, et pour cette route je suis passé de ça :

Code:

routes.resultats.type = "Zend_Controller_Router_Route"
routes.resultats.route = "resultats/:lang/:champ"
routes.resultats.defaults.controller = "resultats"
routes.resultats.defaults.action = "resultats"
routes.resultats.defaults.lang = fr
routes.resultats.defaults.champ = 0

à ça :

Code:

routes.resultats.type = "Zend_Controller_Router_Route_Regex"
routes.resultats.route = "resultats/(\w+)/(\d+)/(\w+)"
routes.resultats.defaults.controller = "resultats"
routes.resultats.defaults.action = "resultats"
routes.resultats.map.1 = "lang"
routes.resultats.map.2 = "champ"
routes.resultats.map.3 = "url"
routes.resultats.reverse ="%s/resultats/%d-%s.html"

le champ "url" ajouté sert à embellir l'url avec du contenu plus parlant qu'un simple identifiant. J'ai bien sur changé la façon donc je construit l'url dans ma page en ajoutant ce nouveau champ.

Je peux voir sur le lien que l'url se construit très bien avec les bonnes valeurs aux bonnes places, mais quand je clic sur le lien, Zend me renvoit une erreur "Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message invalid controller specified(error)"

Si cela peut aider, voici mon fichier htaccess :

Code:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php [NC,L]

Et l'initialisation du router dans le bootstrap :

Code:

[lang=php]protected function _initRouter() {
 
$front = $this->bootstrap('FrontController')->getResource('FrontController');
 $router = $front->getRouter();
 $config = new Zend_Config_Ini(APPLICATION_PATH . '/configs/routes.ini', 'routes');
 $routing = new Zend_Controller_Router_Rewrite();
 $routing->addConfig($config, 'routes');
 $front->setRouter($routing);}

J'ai suivi plusieurs tuto sur le web mais je n'arrive pas à voir ce qui cloche dans mon code, alors si quelqu'un a une idée  smile

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages