Bonjour
la structure des URL des page de mon site est la suivante :
le mod_rewrite et une regex me permet d'appeler cette page avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part index.php?class=MaClasse&func=MaFonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part MaClasse-MaFonction.html
Code : Sélectionner tout - Visualiser dans une fenêtre à part RewriteRule ^([0-9a-zA-Z]*)-([0-9a-zA-Z]*)\.html$ index.php?class=$1&func=$2
Jusque-là, pas de problème, ça marche.
Maintenant j'aimerais pouvoir passer des paramètres supplémentaires à ma page.
par exemple :
et obtenir
Code : Sélectionner tout - Visualiser dans une fenêtre à part Classe-fonction.html?param=val
Code : Sélectionner tout - Visualiser dans une fenêtre à part index.php?class=MaClasse&func=MaFonction¶m=var
j'ai essayé ceci mais ça ne fonctionne pas :
Dans la variable $_GET je n'ai que les deux premiers paramètres (class et func)
Code : Sélectionner tout - Visualiser dans une fenêtre à part RewriteRule ^([0-9a-zA-Z]*)-([0-9a-zA-Z]*)\.html(\??)([0-9a-zA-Z=&]*)$ /sites/teomi/index.php?class=Mv$1&func=$2&$4
A priori, l'expression est correcte, en exécutant le code PHP suivant :
j'obtiens
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <?php $pattern = "^([0-9a-zA-Z]*)-([0-9a-zA-Z]*)\.html(\??)([0-9a-zA-Z=&]*)$"; $str = "MaClasse-MaFonction.html?param=val¶m2=val2"; ereg($pattern, $str, $res); echo '<pre>'; print_r($res); echo '</pre>'; ?>
Array
(
[0] => MaClasse-MaFonction.html?param=val¶m2=val2
[1] => MaClasse
[2] => MaFonction
[3] => ?
[4] => param=val¶m2=val2
)
Est-ce que quelqu'un peut m'aider ?
Merci d'avance
Partager