[résolu] pas de string dans ma rewrite ?

WRInaute discret
j'ai un soucis avec une rewrite qui ne veut pas fonctionner, j'ai surement une erreur, mais je n'arrive pas a voir laquelle.

Rewrite avec l'id tout simple fonctionne :

Code:
<a href="showgame-1.html">toto et son copain 2</a>
rewrite :
Code:
RewriteRule ^show-([0-9]+).html$ /show_game.php?gameid=$1 [L]

avec titre du jeu en plus de l'id : erreur :

Code:
<a href="showgame-1-toto-et-son-copain-2.html">toto et son copain 2</a>
Rewrite :
Code:
RewriteRule ^showgame-([0-9]+)-([a-z0-9]+).\.html$ /show_game.php?gameid=$1&gamename=$2 [L]

j'ai créé une fonction qui "nettoie" le nom pour le mettre dans l'URL qui place des "-" au lieu des espaces, ainsi que les caracteres accentués.


Merci pour vos remarques concernant cette erreur ;)
 
WRInaute discret
Code:
RewriteRule ^showgame-([0-9]+)-([a-z0-9]+).*\.html$ /show_game.php?gameid=$1&gamename=$2 [L]
résolu... manquait l'étoile :D
 
Nouveau WRInaute
Euh non, à moins que je fasse une erreur ce n'est pas ce que tu es sensé attendre.

Il manque l'acceptation des tirets, le code exact serait:

RewriteRule ^showgame-([0-9]+)-([a-z0-9\-]+)\.html$ /show_game.php?gameid=$1&gamename=$2 [L]
 
WRInaute accro
dabYo a dit:
Euh non, à moins que je fasse une erreur ce n'est pas ce que tu es sensé attendre.

Il manque l'acceptation des tirets, le code exact serait:

RewriteRule ^showgame-([0-9]+)-([a-z0-9\-]+)\.html$ /show_game.php?gameid=$1&gamename=$2 [L]

Je suis d'accord avec toi, c'est son .* qui ramasse le reste d'ou son impression que tout marche bien.

a part ca, le tiret est l'exception et il n'a pas besoin d'être échapper en début et fin de classe:
[a-z0-9-]
ou
[-a-z0-9]
 
Discussions similaires
Haut