Page 1 sur 1

insérer les mots clés recherché dans l'url de recherche

Posté : 20 juin 2006, 22:47
par fred_phpf
Bonsoir,

j'ai remarqué sur certains sites une chose que je trouve très pratique:
les mots clés sont "insérés" dans l'url qui présente les résultats de recherche ... cela présente de nombreux avantages à mes yeux et génere des urls uniques au lieu d'url du style: ../search.php?mode=results

comment cela est il possible ?

Posté : 21 juin 2006, 07:50
par Cyrano
Fais une recherche sur le forum ou dans :google: sur "url-rewriting", ça devrait t'apporter pas mal de réponses.

Posté : 21 juin 2006, 10:49
par fred_phpf
Fais une recherche sur le forum ou dans :google: sur "url-rewriting", ça devrait t'apporter pas mal de réponses.
j'ai mal formulé ma question, ce qui m'interesse ce n'est pas de savoir grace a quel mod on peut y parvenir ... la question est comment

j'ai qqs notions de réécritures d'url, et pourtant rien ne m'indique comment insérer les mots clés recherchés dans l'url.

-> http://www.phpfrance.com/forums/viewtop ... ht=#132163

Posté : 21 juin 2006, 11:06
par fred_phpf
Je reformule ma question avec un exemple avec Google par exemple ou le mot clé recherché apparait dans l'url

http://www.google.fr/search?q=phpfrance

sur nombre de portail et forum, la page de résultats quelque soit le terme recherché est la même:

http://www.domaine.tld/search.php?mode=results

Posté : 21 juin 2006, 11:14
par Ryle
Ne serait-ce pas du à la différence de méthode dans le formulaire d'envoi ? Si c'est bien ta question, la réponse est que les paramètres passés en GET (<form method="get" ... dans ton formulaire) sont visibles dans l'url, ceux passés en POST (<form method="post" ... ) n'y figurent pas :)

Posté : 21 juin 2006, 11:16
par Devether
Il faut que ton formulaire de recherche utilise la methode GET au lieu de POST comme ça tu vois tes variables dans l'url

Code : Tout sélectionner

http://www.domaine.tld/search.php?mode=results&mots=truc

Posté : 21 juin 2006, 13:01
par Invité
voilà ça doit etre ça probablement.

j'ai simplement modifié

Code : Tout sélectionner

echo "<form name='Search' action='./search.php' method='post'>";
en

Code : Tout sélectionner

echo "<form name='Search' action='./search.php' method='get'>";
les termes recherchés apparaissent bien dans l'url, mais le script ne renvoi aucun résultat

merci de votre aide en tout cas

Posté : 21 juin 2006, 13:05
par Ryle
Sachant que tu modifies la méthode d'envoi, il se peut également que tu ais besoin de modifier la méthode de récéption.

Si les données sont récupérées à travers la variable $_POST, dès le moment où tu les passes dans l'url (donc en get), il faut modifier le script et les récuperer via $_GET au lieu de $_POST :)

Posté : 21 juin 2006, 13:08
par Invité
ça doit venir de là surement

Code : Tout sélectionner

$term = $HTTP_POST_VARS['term']; $addterms = $HTTP_POST_VARS['addterms']; $forum = $HTTP_POST_VARS['forum']; $search_username = $HTTP_POST_VARS['search_username']; $sortby = $HTTP_POST_VARS['sortby']; $searchboth = $HTTP_POST_VARS['searchboth'];
il faut que je change la façon dont sont récupérer les variables, vous confirmez ? :-P

désolé si la question parait idiote, je débute vraiment :-/

Posté : 21 juin 2006, 13:09
par fred_phpf
zut, post croisé

tiens j'ignorais qu el'on pouvais poster en anonyme