Utilisation de Zend_Controller_Router
Bonjour, voila je suis vraiment embêté je suis un débutant sur ZEND et c'est vraiment la galère, voila je cherche a réduire la taille de mes liens car des fois ils sont trop long.
Il y a plein de tutoriels pour utiliser zend_controller_router mais il n'y a pas assez de détails pour les gens perdu comme moi.
Quand on lit ce truc http://www.dator.fr/zend-framework-e...ge-specifique/
ça à l'air simple mais on le met ou son code ?
dans le controller de la page ?
dans une nouvelle page qu'il faut créer ?
et après on fait appelle comment à notre lien pour le mettre dans le href ???
franchement galère, en plus j'aimerais faire passer 2 variables dans l'url (bon déjà 1 ca serait pas mal) Si quelqu'un peut m'aider merci...
Bon j'ai un dernier probleme
Ton code marche super bien ! je l'ai modifié pour avoir l'url que je souhaite c'est à dire un truc de ce genre :
http://localhost/MonProjet/MonContro...ePourGoogle/Id
Sauf que j'ai un bug, Zend me dit que je n'ai pas spécifié d'action (et il a raison Zend)
Sauf que moi je ne veux pas spécifié d'action sinon sa fait trop long dans l'url (et c'est pas cool dans google). Comment faire ?
Et aussi autre chose... Comment je fais ressortir la fameuse variable Id pour que je puisse l'utiliser dans mon controller qui en l'occurence s'appelle MonController.php
Pour info j'ai bidouiller mon Bootstrap.php et maintenant j'utilise Zend_Controller_Router de cette manière
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
protected function _initRouter()
{
// Récupère l'instance courante du router actuel si il existe sinon en créer un
$router = Zend_Controller_Front::getInstance()->getRouter();
// Défini la route 'article'
$route = new Zend_Controller_Router_Route_Regex('MonController/MonAction/[a-z0-9]/(\d{1,2})',
array('controller' => 'MonController','action' => 'MonAction'),
array(1 => 'pagehtml',2 => 'id',),
'MonController/%s/%s');
// Ajoute la route au router et renvoi l'objet
$router->addRoute('Description', $route);
} |
et j'affiche mon href de cette manière :
Code:
1 2
|
$this->url(array('pagehtml' => $sdfeeesfghezgdcdf[0],'id' => $id,), 'Description'); |