Recup Plusieures Variables ?

Nouveau WRInaute
Bonjour,

J'ai www.foo.com/?Type=moto
Voudrais www.foo.com/annonce-type_moto.html
Jusque la pas de problemes

RewriteEngine on
RewriteRule ^annonce-type_(.*).html index.php?Type=$1

Pas contre j'ai prlusieurses page avec une reglette et voudrais recuperer la variable tri style:
www.foo.com/annonce-type_moto-tri=2.html vers
www.foo.com/?Type=moto&tri=2

Quelqun peut m'aider sachant qu'il peut aussi y avoir une autre variable apres tri style
www.foo.com/annonce-type_moto-region_France-tri=2.html vers
www.foo.com/?Type=moto&tri=2&Rg=france

Merci
 
WRInaute passionné
Code:
RewriteEngine on
RewriteRule ^annonce-type_(.*)-region_(.*)-tri=(.*)\.html index.php??Type=$1&Rg=$2&tri=$3 [L] 
RewriteRule ^annonce-type_(.*)-tri=(.*)\.html index.php??Type=$1&tri=$2 [L] 
RewriteRule ^annonce-type_(.*)\.html index.php?Type=$1 [L]

V'la :wink:
 
Nouveau WRInaute
Vraiement Trop fort.
Petite question:

Est il possibel de savoir quel parametre est present dans url sans prevoir toutes les parades posiibles ?
je m'explique par un exemple.

annonce-type_moto-region_france-tri=1.html savoir que j'ai un tri=1 et donc contruire ma redirection directement sans avoir à faire
index.php?Type=$1&Rg=$2&tri=$3 [L]

car il est possible de n'avoir soit qu'une seul regle qui remvoit les variables plustot que ces creer 4 regles
RewriteRule ^annonce-type_(.*)-region_(.*)-tri=(.*)\.html index.php??Type=$1&Rg=$2&tri=$3 [L]
RewriteRule ^annonce-type_(.*)-tri=(.*)\.html index.php??Type=$1&tri=$2 [L]
RewriteRule ^annonce-type_(.*)\.html index.php?Type=$1 [L]
RewriteRule ^annonce-type_(.*)-region_(.*)\.html index.php??Type=$1&Rg=$2 [L]
 
WRInaute passionné
J'ai du mal à te suivre...

Vu que toutes tes règles redirigent vers index.php, tu pourrait n'avoir par exemple qu'une seule règle du type
Code:
RewriteRule ^annonce-.*\.html index.php
et exploser la variable $_SERVER[REQUEST_URI] au début de la page index.php pour récupérer le contenu de tes variables (type, region, tri) et afficher la page qui va bien.

Je répond à ta question ??
 
Discussions similaires
Haut