[résolu] Rewriting avec paramètres variables et formulaire

WRInaute discret
Bonjour à tous, je suis nouveau ici :)

J'ai découvert l'url rewriting ce week end et je suis en train de mettre ca en place sur un site.

J'ai une page qui me sert à lister des produits et dont le contenu est différent en fonction des arguments qui lui sont passés:
Par exemple:
- page=x
- idnp=y
- idnm=z
- orderitem=u

J'ai choisi de ne pas stocker en session les données mais plutot de les passer via l'url.

Je ne vois pas vraiment comment agencer ca au niveau de la réécriture, certains paramètres étant optionnel (comme page qui vaut 1 par défaut).

Je ne vois pas non plus comment gérer ca quand par exemple j'utilise un select pour changer la valeur de orderitem (reclassement de la liste).

Si qunlqun peut me faire par de ses lumières là dessus, merci!

PS: J'avais penser forcer le passage de tous les paramètres et faire une url du genre index-1,2,3,4,5.html mais je doute que ca soit une bonne idée... non ?
 
WRInaute discret
Bonsoir,

En fait je veux faire ca:

#1 Je passe des arguments de page en page pour ne rien stocker en session (c'est mieux niveau accessibilité).
#2 J'ai une liste de produits gérée par produits.php
#3 En fonction des arguments passés à produit.php les produits récupérés dans la base de données sont différents.
#4 Quand je consulte un produit de la liste j'ai un lien pour revenir sur la liste. Ce lien doit reprendre les arguments afin d'afficher exactement la même liste.

Mon problème est que par exemple, j'utilise une liste de navigation <select> pour naviguer dans les pages de la liste. Je ne vois pas comment passer d'une validation d'un formulaire à une page dont l'url est réécrite.

C'est à dire passer de produits.php + $_POST['page'] = 2 à produits-2.html

Il me manque une étape, comment passe-t-on d'une validation de formulaire GET à une url réécrite, on fait une redirection ?!

J'espère que c'est un peu plus clair, si tu as des questions ou si tu comprends pas hésite pas à me le signaler, des fois je m'enbrouille un peu tout seul...

Merci!!
 
WRInaute discret
Bon, je patoge complet là :(

En fait je me demande, est-ce utile d'appliquer le rewriting sur mon moteur de recherche puisque google n'utilise pas les formulaires ?

Peut être que faire un lien rewrité vers chaque produit dans un index accessible depuis la page d'accueil serait bien mieux pour le référencement ?
 
WRInaute passionné
giviz a dit:
En fait je me demande, est-ce utile d'appliquer le rewriting sur mon moteur de recherche puisque google n'utilise pas les formulaires ?
non.

Peut être que faire un lien rewrité vers chaque produit dans un index accessible depuis la page d'accueil serait bien mieux pour le référencement ?
oui :wink:
 
WRInaute discret
Donc dans ce cas ca ne pose pas de problème d'avoir un lien réécrit vers chaque produit dans l'index + un lien dynamique à partir du moteur de recherche car google ne vas pas utiliser ce moteur de recherche.

Je demande ca juste pour être sûr!

Merci!
 
WRInaute discret
Oui............. mais.....

Sur ma page d'accueil j'ai deux liens qui permettent d'accéder aux deux rubriques principales:

En fait chaque lien va semplement sur la page produit.php et passe des arguments prédéfinis.

Seulement sur cette page je vais avoir des urls type php pour les produits, alors que dans l'index accessible depuis la page d'accueil je vais avoir des urls réécrites pour ces mêmes produits.

Je vais donc avoir plusieurs urls qui mènent à la même chose... et si j'ai bien compris c'est vraiment pas bon pour le référencement.

Je tourne en rond :(
 
WRInaute discret
Comme j'ai expliqué plus haut les produits sont listés avec un lien permettant d'accéder au produit + tous les arguments de la liste dans le lien:

Code:
produits.php arg1=X arg2=Y
  <a href="unproduit.php?id=Z&arg1=X&arg2=Y">Produit Z</a>

et dans l'index:
Code:
  <a href="produit_Z.html">Produit Z</a>

Je me retrouve donc avec deux url pour un même produit, et ca pour chaque produit.

Je ne suis pas très familiarisé avec l'url rewriting, j'ai découvert ca il y a même pas deux jours. La seule solution que je vois c'est de laisser tomber le passage des arguments par GET et de les mettre en session.

Maintenant il me semble que les robots initialise pas de session non ?!

Tu comprends le problème ?

Merci
 
WRInaute passionné
C'est quoi "les arguments de la liste" ?
Si ce sont des données entrées par l'utilisateur (formulaire, inputbox, checkbox, liste déroulante) alors de toutes les façons les moteurs ne verront jamais ces fameuses pages.
 
WRInaute discret
Oui, le soucis est en fait de passer ces paramètres issus du moteur de recherche interne dans chaque url afin de les conserver de page en page.

Mais bon, ca fini par être un foutoir monstrueux...

Je vais donc faire un lien réécrit par liste + un par produit et passer les arguments issus du formulaire en session.

Comme tu dis c'est pas génant puisque de toute facon ce qui est en session n'est pas vital, donc que le robot l'utilise pas on s'en fou là, c'est que pour faire du tri.

J'espere que ca va aller tout seul comme ca

Merci beaucoup pour ton aide!
 
WRInaute discret
Trop tard j'ai tout changer, et ca fonctionne nikel, je suis happy :D

Et puis je préfère avoir une seule url pour référencer un produit en fait, c'est plus clair, autant pour les robots que pour les internautes et même pour moi!

Merci encore, ca fonctionne au poil là :)
 
Discussions similaires
Haut