variable manquante

Nouveau WRInaute
Bonjour à tous,

Après recherche (dsl si je suis passé dessus sans le noter) je recherche toujour le moyen d'ecrire une regle qui tiendrait compte des variables manquante genre :

index.php?truc=1&machin=&brol=3

avec ma regle, quand machin manque j'ai une superbe 404

merci d'avance

Code:
RewriteRule ^index-(.+)-(.+)-(.+)$ index.php?truc=$1&machin=$2&brol=$3 [L]
 
WRInaute impliqué
Après recherche (dsl si je suis passé dessus sans le noter) je recherche toujour le moyen d'ecrire une regle qui tiendrait compte des variables manquante genre :
index.php?truc=1&machin=&brol=3

J'ai eu également le même problème que toi, je n'ai jamais trouvé d'autre solution que d'écrire une règle pour chaque possiblité de variable manquante. Sachant que j'ai jusqu'à 6 variables, ça me fait 36 règles dans mon htaccess, un beau bordel... mais ça marche :wink:

Si quelqu'un connait une solution plus orthodoxe, je suis également preneur.
Loïc.
 
WRInaute discret
Tu peux très bien rendre un parametre optionel en rajoutant ? après.

Ce qui peu donner un truc dans le genre

Code:
index-(.+)-(.+)?-(.+)$

le problème c que dans ton cas, si ton paramètre n'y est pas, il faut bien que l'url soit index-param1--param3 sinon cela ne marchera pas.

Une autre solution est de nommer t param avec une lettre par exemple T pour truc M pour machin et B pour brol et tu rends cette lettre optionnel avec un contenu qui peu etre vide.

explication en code

Code:
indexT([0-9]*)M?([0-9]*)B?([0-9]*)$
ainsi la lettre representant ton paramètre est optionelle et le contenu qui la suit peu etre quelque chose ou null.

ce qui donne un truc dasn le genre indexT2M2B1 ou alors indexT2B2 ...

Voila, plus qu'a le mettre a ta sauce
 
WRInaute discret
et oui mais attention, la première solution que j'ai proposé je ne l'est pas testé, elle marche théoriquement. La deuxieme par contre sans pb, je l'utilise
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut