yankey Posté 8 Septembre 2006 Partager Posté 8 Septembre 2006 (modifié) Bonjour, J'utilise le fichier .htaccess pour réecrire les urls. Le code est de cette forme: RewriteRule ^ville-(.+)\.html$ /ville.php?nom_ville=$1 [L] la réecriture fonctionne tout à fait normalement, même pour les nom de villes composés séparés par des tirets comme: saint-malo. L'url est de cette forme ville-saint-malo.html et la page s'ouvre normalement. Par contre, si je fais un echo sur $nom_ville dans cette page, apparemment la valeur n'est pas récupérée en entier, pour saint-malo, l'echo affichera seulement malo, ce qui évidemment pose un certain nombre de problèmes pour les requetes qui sont associés. Est-ce que cela peut venir de la réecriture avec (.+) ? Et existe-t-il un autre code plus sûr ? Modifié 8 Septembre 2006 par yankey Lien vers le commentaire Partager sur d’autres sites More sharing options...
yankey Posté 8 Septembre 2006 Auteur Partager Posté 8 Septembre 2006 (modifié) bon, j'ai finie par comprendre qu'il faut deux séparateurs différents... je ne peux utiliser le tiret dans la réecriture et dans les valeurs... il faut donc modifier l'un ou l'autre. Modifié 8 Septembre 2006 par yankey Lien vers le commentaire Partager sur d’autres sites More sharing options...
Compte supprimé Posté 8 Septembre 2006 Partager Posté 8 Septembre 2006 Mais si tu peux utiliser le même séparateur. Ta rewriterule est correcte et (.+) récupère tout ca qui se trouve derrière ville- Tu dois donc bien récupérer saint-malo dans $_GET['nom_ville'] Le problème est ailleurs... a mon avis dans ton script php. Cordialement, Lien vers le commentaire Partager sur d’autres sites More sharing options...
yankey Posté 13 Septembre 2006 Auteur Partager Posté 13 Septembre 2006 Ben, j'ai modifié les séparateurs dans la champ ville, j'ai remplacé par des points, et cette fois tout se passe trés bien, il récupère bien le nom de la ville en entier. C'est bizarre, je ne sais pas, parce que si j'avais un problème dans le php, il récupérerai aussi seulement un bout de la valeur en mettant des points à la place des tirets... Je vais revoir encore le code de la page pour essayer de comprendre ce qu'il peut se passer dans le php, mais vraiment je ne vois pas, si je laisse les tirets et que je fais un simple echo"$nom_ville" en haut de la page je n'ai que la dernière partie du nom, avec des . je l'ai en entier... Je vais faire des test sur des url non réecrites aussi pour voir... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant