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

Petit nouveau ! | 9 Messages

20 juin 2006, 22:47

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 ?

Mammouth du PHP | 19672 Messages

21 juin 2006, 07:50

Fais une recherche sur le forum ou dans :google: sur "url-rewriting", ça devrait t'apporter pas mal de réponses.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 9 Messages

21 juin 2006, 10:49

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

Petit nouveau ! | 9 Messages

21 juin 2006, 11:06

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

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

21 juin 2006, 11:14

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 :)

Eléphant du PHP | 134 Messages

21 juin 2006, 11:16

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

Invité
Invité n'ayant pas de compte PHPfrance

21 juin 2006, 13:01

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

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

21 juin 2006, 13:05

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 :)

Invité
Invité n'ayant pas de compte PHPfrance

21 juin 2006, 13:08

ç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 :-/

Petit nouveau ! | 9 Messages

21 juin 2006, 13:09

zut, post croisé

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