form avec un lien

  • Auteur de la discussion Auteur de la discussion JMD
  • Date de début Date de début
Nouveau WRInaute
bonjour,

je cherche a creer un formulaire de recherche qui pointe vers une page de resultat, sous la forme :
Code:
http://www.adresse.com/search/terme_de_recherche

est-ce possible en http ?

Pour l'instant j'ai fait ceci :

Code:
<form action="http://www.adresse.com/search/">
<input type="text" name="recherche">
</form>

mais j'obtiens juste un lien vers
Code:
http://www.adresse.com/search/?recherche=valeur.de.l'input

si j'enleve name="recherche", j'obtiens ce lien :
Code:
http://www.adresse.com/search/?=valeur.de.l'input

donc ce n'est toujours pas bon.

merci pour votre aide.

jm
 
WRInaute accro
Si je me fie à ce qui est dit ici :
http://www.commentcamarche.net/html/htmlform.php3
CCM a dit:
GET correspond à un envoi des données codées dans l'URL, et séparées de l'adresse du script par un point d'interrogation

Je pense qu' il est donc impossible de s'en affranchir en HTML dans ton cas.
(parce que tu utilises un formulaire, sinon on peut très bien faire de l'URL rewriting mais c'est HS)

Par contre en javascript, pas de problème...
L'exemple suivant redirige vers la doc de php.net car les urls sont de la forme qui t'intéresse.
Pour tester l'exemple, tape "include" dans la zone "recherche".
Code:
<html>
<head>
<script type="text/JavaScript">
 function lancer(){
   var recup = document.form1.recherche.value;
   if(recup != ""){
      document.form1.action="http://fr.php.net/"+recup;
      document.form1.submit();
      return true;
   }
   else return false;
 }
</script>
</head>
<body>
<form name="form1" method="post" onSubmit="return lancer();">
<input type="text" name="recherche">
<input type="submit" name="submit" value="Ok">
</form>
</body>
</html>
 
Nouveau WRInaute
dd32 a dit:
Si je me fie à ce qui est dit ici :
http://www.commentcamarche.net/html/htmlform.php3
CCM a dit:
GET correspond à un envoi des données codées dans l'URL, et séparées de l'adresse du script par un point d'interrogation

Je pense qu' il est donc impossible de s'en affranchir en HTML dans ton cas.
(parce que tu utilises un formulaire, sinon on peut très bien faire de l'URL rewriting mais c'est HS)

Merci pour l'information et pour le script en java, il fonctionne tres bien !

jm

PS: quelle modification ajouter pour que le lien s'ouvre dans une nouvelle fenetre ?
 
WRInaute accro
tu peux essayer ceci (j'ai utilisé une popup dont on peut changer les propriétés, cf http://www.openweb.eu.org/articles/popup/) :
Code:
<html> 
<head> 
<script type="text/JavaScript"> 
 function ouvrir(){ 
   var recup,page;
   recup = document.form1.recherche.value; 
   if(recup != ""){ 
      page="http://fr.php.net/"+recup;
      window.open(page);
      return true; 
   } 
   else return false; 
 } 
</script> 
</head> 
<body> 
<form name="form1" method="post" onSubmit="return ouvrir();"> 
<input type="text" name="recherche"> 
<input type="submit" name="submit" value="Ok"> 
</form> 
</body> 
</html>
 
Nouveau WRInaute
c'est magnifique :)
merci beaucoup, maintenant plus qu'a apprendre java et php pour pouvoir aider a mon tour :D

et merci pour les liens egalement
 
WRInaute accro
avec plaisir :)

Note que le javascript (et non pas le Java, car ce sont deux langages différents), est parfois désactivé par certains internautes.

Note aussi que dans le premier cas, on ouvre une page dans la même fenêtre
et que dans le deuxième cas on ouvre une popup que l'on peut paramétrer en taille, avec ou sans scrollbar, avec ou sans barre d'outils, avec ou sans menu, resizable ou non, etc.

Enfin si tu lances dans le developpement web, je te conseille de commencer par le site de CCM (voir Google) parmi d'autres.
 
Nouveau WRInaute
oui, moi-meme j'utilise noscript sur ff, donc j'essaie de faire le plus possible sans javascript :wink:.
j'essaie d'apprendre en dilettante, mais entre perfectionner html, exploiter css, et utiliser javascript, php ou mysql, il y a vraiment beaucoup a faire !!!

par exemple, j'ai essayé de parametrer la popup, comme je l'ai deja fait auparavant, mais vu qu'elle se trouve dans un script, cela a l'air different.
Code:
window.open(page,'nom')
fonctionne bien (plusieurs recherches actualisent la popup sans en ouvrir une nouvelle, mais mais
Code:
window.open(page,'nom, toolbar=no')
ou
Code:
window.open(page,'nom', 'toolbar=no')
ne fonctionne plus :cry:
il faut donc que j'apprennes les bases :lol:

d'ailleurs dans ton code, il faut apparement utiliser method=get, car post genere une erreur. (get genere une url si j'ai bien compris)

bonne journee !
 
WRInaute accro
vite fait :
la method=GET veut dire qu'on passe les éléments du formulaire après un "?" dans l'URL (on dit : les données sont passées "en paramètre" dans l'URL)
contrairement à la methode POST où les "données sont cachées"
Par exemple si je remplis un formulaire en methode GET avec le champ 'pseudo' à remplir et que j'appuie sur Ok, l'URL suivante sera de la forme :
-http://www.example.com?pseudo=dd32

Sinon pour les popups, regarde ici :
http://openweb.eu.org/articles/popup/
et particulièrement la partie "Les options possibles"
 
WRInaute accro
Bizarre, je n'obtiens pas cette erreur.

edit : après plusieurs essais j'ai effectivement eu cette erreur. C'est bizarre... Pourquoi un coup sur deux ??

edit N°2 : j'ai trouvé cette info : http://www.cru.fr/faqdata/cache/156.html
Ce serait un bug Apache...
je ne sais pas si l'info est confirmée mais probablement étant donné que l'erreur n'apparaît pas tout le temps.
En tous cas, si c'est ça, on ne peut rien faire :?
Je te conseille donc d'utiliser la méthode get si c'est possible...
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut