Rewriter lorsque certaines variables sont absentes

WRInaute impliqué
Salut,

J'avais lu un sujet là dessus il y a quelque temps mais impossible de mettre la main dessus.

J'ai des urls du type page-valeur1-valeur2-valeur3-valeur4.html qui donnent vers index.php?variable1=valeur1&variable2=valeur2&variable3=valeur3&variable4=valeur4. Jusque le là pas de problème.

J'utilise:
Code:
RewriteRule ^page-([a-z0-9_]+)-([a-z0-9_]+)-([a-z0-9_]+)-([a-z0-9_]+)-.html$ /index.php?variable1=$1&variable2=$2&variable3=$3&variable4=$4 [NC,L]

Le problème survient quand certaines variables sont absentes: exemple page-valeur1---valeur4.html qui devrait donner vers index.php?variable1=valeur1&variable2=&variable3=&variable4=valeur4

Comment faire en sorte que la règle de réécriture tienne compte des variables absentes ?

Loïc.
 
WRInaute passionné
cleden a dit:
Salut,

J'avais lu un sujet là dessus il y a quelque temps mais impossible de mettre la main dessus.

J'ai des urls du type page-valeur1-valeur2-valeur3-valeur4.html qui donnent vers index.php?variable1=valeur1&variable2=valeur2&variable3=valeur3&variable4=valeur4. Jusque le là pas de problème.

J'utilise:
Code:
RewriteRule ^page-([a-z0-9_]+)-([a-z0-9_]+)-([a-z0-9_]+)-([a-z0-9_]+)-.html$ /index.php?variable1=$1&variable2=$2&variable3=$3&variable4=$4 [NC,L]

Le problème survient quand certaines variables sont absentes: exemple page-valeur1---valeur4.html qui devrait donner vers index.php?variable1=valeur1&variable2=&variable3=&variable4=valeur4

Comment faire en sorte que la règle de réécriture tienne compte des variables absentes ?

Loïc.
"+" signifie au moins une fois
"*" signifie "absent" ou présent au moins une fois.

remplace les "+" par des "*" :wink:
 
Discussions similaires
Haut