-ZN- Posté 10 Mai 2007 Posté 10 Mai 2007 Bonjour, j'ai un petit soucis sur une application. J'ai un site qui est complètement rewrité afin de gérer le multilingue. Voilà le format des adresses: mondomaine.net/en/admin/prospectDelete.php?customerID=18 et la ligne correspondant au rewrite RewriteRule ^([a-z]{2})/admin/([a-zA-Z]*).php$ /admin/$2.php?lang=$1 [L] du coup mon customerID n'est pas récupéré. C'est normal ou pas? est ce que le rewriting annule la variable que je passe dans l'URL? Faut-il que j'améliore mes regles de réécriture? Merci d'avance, ZN
Dan Posté 10 Mai 2007 Posté 10 Mai 2007 Salut, Le query string est toujours laissé de côté lors de la réécriture. Il faut le traiter séparément. Mais si tu veux simplement ajouter customerID=18 à la fin de ton URL réécrite, il te suffit d'ajouter le flag QSA (pour Query String Append) Ta règle devient donc: RewriteRule ^([a-z]{2})/admin/([a-zA-Z]*).php$ /admin/$2.php?lang=$1 [QSA,L] Dan
hellay Posté 24 Mai 2007 Posté 24 Mai 2007 bonjour, j'ai un problème similaire, J'ai une page qui va afficher une liste. Je veux ajouter un critere de tri pour n en afficher qu une partie selon divers choix. Je fait donc un formulaire en Get(je ne veux pas en post, je prefere que l utilisateur puisse garder les variables de tri dans l url pour ses bookmarks, ou sur google ) avec des champs de choix que je reprend ensuite dans mes requetes de BdD.. tout fonctionne bien la dessus... Mon probleme viens du fait que lorsque je vais appliquer un rewrite, il me faudrai pouvoir recuperer les variables et les integrer. Or malheureusement, quand j utilise mon formulaire il me fait : Jeux-de-Roles/Campagnes-.html?tri_univers=3 Alors que je voudrais, comme indiqué dans mon htacess , utiliser une adresse du type: Jeux-de-Roles/Campagnes-3.html mon formulaire est du type: (sachant que j ai simplifié ici mais j ai plusieurs champs selects et donc ne peut pas me passer de formulaire ( sinon j aurai fait une simple liste ) form action="" method="GET"> <select name="tri_univers"> <option value="3">-test-</option></select></form Mon rewrite est du type: RewriteRule ^Jeux-de-Roles/Campagnes-([0-9]*).html$ /campagne.php?infos=campagnes&tri_univers=$1 [QSA,L] une idée de mes erreurs ou d une bonne maniere de scripter ce que je veux ? merci d avance des reponses
Dan Posté 24 Mai 2007 Posté 24 Mai 2007 Un formulaire enverra toujours une URL avec des variables dans le cas d'utilisation de la méthode GET. Même dans le cas d'une méthode POST, il faudrait modifier la méthode en fonction du choix de l'utilisateur. Ce n'est donc pas une question de réécriture, parce que cela se passe en amont. je ne veux pas en post, je prefere que l utilisateur puisse garder les variables de tri dans l url pour ses bookmarks, ou sur google OK pour l'utilisateur et ses bookmarks, mais tu crois vraiment que Googlebot va remplir tes formulaires ? Dan
hellay Posté 24 Mai 2007 Posté 24 Mai 2007 merci pour la réponse qui m'évite de continuer a chercher partout une méthode sur mon formulaire j'ai finalement fait ça totalement différemment avec des menus. déroulants non google ne remplira pas les formulaires, mais si des visiteurs font des liens sur leur site/forum vers les versions triées c'est toujours ça en plus qui reviens sur les moteurs ensuite
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant