Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonsoir,
Voici mon code ci-dessous (un code afin de valide des éléments).
Le seule moment, ou la page ne s'affiche pas et renvoie vers une ErrorController, c'est quand la valeur saisie ne corresponds pas au regex, ce qu'est "normal"...ou pas !
Je peux saisir http://monsite/page/page1/page2/.... ou http://monsite/page/page1/page2/page3/page4/page5 ça ne change rien ! (page4, page5,... ne correspondront à rien...). J'utilise Zend_Controller_Router_Route_Regex car le nom des pages seront dynamiques, tout comme les noms des menus.
Comment faire afin de renvoyer l'utilisateur sur ErrorContoller si il saisie une URL qui ne correspond à rien ? Faut-il que je fasse une post vérification ?
private $_front; private $_routeur; public function _initAutoload() { $this->_front = $this->bootstrap('FrontController')->getResource('FrontController'); $this->_routeur = $this->_front ->getRouter(); $uneRoute = new Zend_Controller_Router_Route($route, $defaults, $reqs); $this->_routeur->addRoute('uneRoute', $uneRoute); } protected function _initroute(){ echo '<pre>'; print_r($this->_routeur); echo '</pre>'; $routeRegex = new Zend_Controller_Router_Route_Regex( '(\d+).html', array( 'controller' =>'index', 'action' => 'index'), array( 1 => 'id'), '%d' ); $this->_routeur->addRoute('index', $routeRegex); $routeRegex2 = new Zend_Controller_Router_Route_Regex( '([a-zA-Z0-9]+)/([0-9]+)', array( 'controller' =>'index', 'action' => 'index'), array(1 => 'page',2 => 'nompage'), '%d' ); $this->_routeur->addRoute('index2s', $routeRegex2); }
J'utilise Zend_Controller_Router_Route_Regex car le nom des pages seront dynamiques, tout comme les noms des menus.
D'avance merci
++
Hors ligne