htacces et URL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : htacces et URL

htacces et URL

par Const » 14 nov. 2009, 15:38

Bonjour,

J'ai besoin d'aide pour une expression régulière dans un RewriteRule; voici ce à quoi je souhaiterais arriver :
La chaine d'entrée et un chemin :
/repertoire/page/val1/val2/pagenum-2

J'ai donc ça pour l'instant :

Code : Tout sélectionner

^repertoire/([a-zA-Z0-9]+)[-/\.]?([a-zA-Z0-9]+)?[-/\.]?([a-zA-Z0-9]+)?[-/\.]?([a-zA-Z0-9]+)?$ repertoire/index.php?page=$1&h=$2&i=$3&j=$4
Le "repertoire" est contant, la première parenthèse, obligatoire donne la page principale.
Les 3 parenthèses suivantes, qui sont précédées de - / ou . à chaque fois sont des paramètres mais ne sont pas obligatoires.

Ma question : Dans le cas que je donne, la dernière section de l'url "pagenum-2" donne "j = 2", car il crois que pagenum est une "section". Je voudrais que pagenum (qui n'est pas obligatoire), rentre dans une variable 'pagenum' s'il est renseigné.
J'avais pensé mettre une expression dans les autres parenthèses afin d'exclure si elle contienne "pagenum-", mais je ne sais pas comment faire ça... J'aurais ensuite rajouter à la fin de l'expression :

Code : Tout sélectionner

[-/\.]?(pagenum-[1-9]+)
Afin d'en récupérer le contenu. Mais je ne sais pas "retirer" des autres parenthèses le texte "pagenum-"

Suis-je clair ? Avez-vous une/des pistes ? Merci.