URL rewriting casse tête

Nouveau WRInaute
Bon je voudrais réécrire mes URLs mais je n'arrive pas du tout

Voici mes URLs : index.php?motcle1=ex1&ville1=ex2&motcle2=ex3&pays1=ex4&ville2=ex5...

il peut y avoir de 0 à 9 motcle, de même pour les villes et les pays, et j'ai même encore d'autres catégories.

Et j'aimerais avoir ceci : index.php/motcle/ex1/ex3/ville/ex2/ex5/pays/ex4

Quelqu'un sait comment faire ceci ?

Batos31
 
Nouveau WRInaute
Le problème vient surtout du fait que l'on ne sait ni l'ordre des motcle1 ville1 pays1 etc, ni leur nombre non ?
 
WRInaute accro
C'est la structure même de tes liens qui est à revoir.
Car même avec de l'url rewriting, si l'ordre des sous-répertoires n'est pas figée, comment tu peux faire ?
Et pourquoi avoir tant de paramètres dans l'url ? Ca doit générer un max de duplicate content car par exemple :
index.php/motcle/ex1/ex3/ville/ex2/ex5/pays/ex4
et index.php/motcle/ex2/ex5/ville/ex3/ex1/pays/ex4 vont pointer vers deux pages différentes avec le même contenu
 
Nouveau WRInaute
C'est vrai tu as raison. En fait c'est un système de tri, il permet de filtrer les résultats en fonctions des paramètres passés à l'URL. Alors quelle est la solution ? Tout passer en variable de session et avoir une seule page index.php ?
 
WRInaute accro
Batos31 a dit:
index.php/motcle/ex1/ex3/ville/ex2/ex5/pays/ex4
Si c'est un CMS/site "maison", tu n'as pas besoin de rewriter pr avoir des URLs du genre.
C'est la variable: $_SERVER['PATH_INFO']

PHP:
<span class="syntaxdefault"><br /></span><span class="syntaxkeyword"><?</span><span class="syntaxdefault">php&nbsp;<br /></span><span class="syntaxkeyword">echo&nbsp;</span><span class="syntaxdefault">$_SERVER</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'PATH_INFO'</span><span class="syntaxkeyword">];</span><span class="syntaxcomment">//&nbsp;affichera:&nbsp;/motcle/ex1/ex3/ville/ex2/ex5/pays/ex4<br /><br /></span><span class="syntaxdefault">$params&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxdefault">explode</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'/'</span><span class="syntaxkeyword">,&nbsp;</span><span class="syntaxdefault">$_SERVER</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'PATH_INFO'</span><span class="syntaxkeyword">]);</span><span class="syntaxcomment">//&nbsp;array('',&nbsp;'motcle',&nbsp;'ex1',&nbsp;'ex3',&nbsp;'ville',&nbsp;'ex2',&nbsp;'ex5',&nbsp;'pays',&nbsp;'ex4')<br />&nbsp;</span><span class="syntaxdefault"></span>
 
Discussions similaires
Haut