Aller au contenu

Sujets conseillés

Posté (modifié)

Bonjour la communauté !

voilà ce que je cherche à faire : un formulaire qui passe des variables en GET avec une url de destination réécrite. Je sais comment afficher les résultats avec un url-rewriting, je ne sais juste pas comment passer d'un formulaire à cette url ...

exemple : quand on clique sur submit je veux obtenir :

/variable-1/type-neutre/prix-0-4/couleur-bleu

au lieu de ?variable=1&type=neutre&prix=0-4&couleur=bleu

Merci par avance !

Modifié par tribords
Posté

Bonjour Tribords,

la seule solution que je verrais serait de passer par javascript, avec un code du style

document.forms['monformulaire'].action = "mon url formatée"

appelé au moment du submit. Mais ça a le gros inconvénient de ne fonctionner que si javascript est activé.

Maintenant, l'intérêt des rewriting est pour faire semblant devant les moteurs. Que je sache, les moteurs ne valident pas encore les formulaires ?? Donc je ne comprend pas pour quelle raison tu voudrais faire ça...

Posté

Bonjour,

Tu peux le faire en utilisant une page "intermédiaire" qui effectue une redirection (de préférence avec les en-tête HTTP et donc à priori la fonction header et le type de redirection HTTP de ton choix, 301 fera l'affaire) vers l'URL réécrite en se basant sur la paramètre passé en POST ou en GET (en fonction de ton choix) pour la composer.

cyberlaura> Si des utilisateurs publient une URL pointant vers des résultats de recherche dans un forum par exemple, cette URL non réécrite sera éventuellement indexée, je suppose que c'est cela que tribords souhaite éviter. Sinon effectivement, comme tu le dis, les moteurs de recherche ne soumettent pas les formulaires à l'heure actuelle.

Posté

Merci pour la précision TheRec, et ta solution est très bien. Juste une remarque malgré tout : il parait qu'il n'est plus trop à la mode de faire des rewriting à tout va, d'autant plus sur des résultats de formulaires pour lesquels les URL seront encore pire rewritées que pas... Mais c'est juste mon point de vue.

Posté

cyberlaura > ça il faut le dire à mon client :)

TheRec > merci beaucoup ça me semble correspondre : je reviens dire ici si c'est ok plus tard !

Posté

Oups ! Si c'est pour un client alors, j'ai rien dit ! Au contraire, c'est clair qu'il faut faire comme ça ;)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...