2009-11-05 13 views
0

J'essaie d'obtenir deux paramètres avec mod-rewrite. J'ai essayé de les séparer avec "-" mais malheureusement, il renvoie le dernier mot comme deuxième paramètre.Analyser Mod-Rewrite

/ders/İlköğretim-matematik
/ders/İlköğretim-fen-ve-Teknoloji

devraient être les URL, "İlköğretim" sera le premier paramètre et le reste sera le deuxième paramètre. (Après la première "-")

Mes règles comme suit:

RewriteRule ^ders/(.*)-(.*)/?$ /ogretmenler.php?sinif=$1&ders=$2 [QSA,L] 

J'espère que je pourrais expliquer le problème ..

Merci à l'avance ...

Répondre

0

Votre . est seulement capturer un seul caractère - vous avez besoin d'un quantificateur là-bas. J'ai aussi fait la première capture du groupe tout caractère sauf -:

ders/([^-]+)-(.*)/?$ /ogretmenler.php?sinif=$1&ders=$2 [QSA,L] 
0

Le problème est que les points uniques (.)-(.) ne correspondra un seul caractère. Vous voulez probablement quelque chose comme

^/ders/([^-]*)-(.*)/?$ 

Le premier groupe correspondra à zéro ou plusieurs non - caractères, suivi du seul -, puis le 2ème groupe correspondra à zéro ou plus de tout caractère (vous pouvez limiter ce plus si on le souhaite).