Récupérer la valeur d'un champ et la renvoyer dans un URL

Henri K. -  
hk299792458 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis novice en HTML et en PHP. Après avoir recherché sur le Web je n'ai pas réussi à trouver la réponse à ma question donc je la pose ici.

Mon "Use case" est le suivant :

J'ai un URL comme suite http://www.flvcd.com/parse.php?kw=UN AUTRE URL QUE JE COPIE COLLE MANUELLEMENT JUSQU'A PRESENT&flag=one&format=super que j'utilise pour récupérer les liens de vidéo.

Jusqu'à présent, dans la barre d'adresse de mon navigateur, je copie colle manuellement une adresse dans la partie que j'ai mis en Majuscule Italic au dessus, j'appuie sur ENTREE et il me renvoie vers la page avec les résultats que je veux.

Je voudrais créer un formulaire HTML local avec un champ, dans lequel je viendrai coller l'adresse, et en appuyant sur ENTREE ça me fait la même chose.

L'intérêt est que je n'ai plus besoin de faire ça dans une barre d'adresse où je me plante souvent en copiant / collant, donc plus "User friendly".

Merci d'avance pour votre aide.

Henri K.

6 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Sais tu faire un formulaire html ? (mettre un champ INPUT text et un BOUTON ) ?
https://www.commentcamarche.net/contents/493-formulaires-html-cours-et-exemples
Sais tu ce que sont les variables $_GET ?
https://www.commentcamarche.net/contents/793-php-recuperation-de-donnees
Car si ta réponse est oui.. tu as déjà tout ce qu'il te faut pour le faire tout seul....

Mais bon.. au cas où, Peux tu montrer le code de ta page parse.php ?
Qu'est-ce qu'elle fait réellement ?


0
DelNC Messages postés 2234 Date d'inscription   Statut Membre Dernière intervention   2 004
 
Bonjour Henri K.

Si tu as besoin d'envoyer les variable d'une page à l'autre, tu n'es pas obliger de la mettre dans l'URL.

Il faut juste la récupérer comme ceci dans la page où tu en a besoin.
<?php
if(isset($_REQUEST["variable" ])) {$variable = $_REQUEST["variable" ];}
	else {$variable = "";}
?>
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
C'est pour ça que je lui ai posé mes questions...

PS : Il est déconseillé d'utiliser $_REQUEST ... car il vaut mieux maitriser les données qu'on envoi (ou reçoit) sur une page et savoir si on veut du GET ou du POST ....
Par exemple, si un jour tu codes avec du POST (pour éviter que les variables puissent être modifiées par l'url justement .. )... le fait d'utiliser $_REQUEST permet à n'importe qui d'apeller ta page en y mettant les valeurs (dans les variables) de son choix.....
0
hk299792458 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Bonsoir à tous,

Merci pour vos réponses rapides.

Le site http://www.flvcd.com/parse.php n'est pas le mien, je ne sais pas comment il a été codé.

J'exploite simplement le lien : quand je mets un URL qui contient une vidéo dans la partie que j'ai mis en majuscule italic (après kw=), http://www.flvcd.com/parse.php?kw=UN AUTRE URL QUE JE COPIE COLLE MANUELLEMENT JUSQU'A PRESENT&flag=one&format=super, il renvoie le lien direct de la vidéo que je pourrai télécharger.

Comme j'explique en haut, jusqu'à présent je fais cette manipulation manuelle de copier coller dans la barre d'adresse de mon navigateur, ce n'est pas très commode, c'est pour ça j'avais l'idée de faire une page HTML simple qui "automatise" un peu ce que je fais à la main.

Ma connaissance HTML formulaire est proche de zéro, mais j'essaie aussi de me débrouiller si j'ai un peu d'aide. Ce que je veux, par exemple, est que si j'ai un formulaire comme celui-ci :
<form method="???" action="[http://www.flvcd.com/parse.php?kw=]<bold>XXXXX</bold>&flag=one&format=super">
   <p><input type="text" name="URL" /></p>
</form>


quand je met un URL (disons youtube.com/aaaaaa) dans le champ du formulaire, et quand je tape sur ENTREE, le youtube.com/aaaaaa viendra renplacer le XXXXX dans le lien dans action.

Je ne sais pas si je suis plus claire.

Merci.

Henri K.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Si tu veux que " l'envoie "soit effectué lors de l'appui sur la touche "entrer" tu peux directement le faire en javascript.

Un truc du genre :
<input id='url' type='text' value='' onkeypress="handle(event)" />

et le javascript :
 function handle(e){
   if(e.keyCode === 13){
     //si c'est la touche "enter"
     var url = document.getElementById('url').value;
     location.href = 'http://www.flvcd.com/parse.php?kw=' + url  + '&flag=one&format=super';
   }
        return false;
 }
0
hk299792458 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai écrit une page de test comme celle-ci :
<HTML>
 <HEAD>
  <script type="text/javascript">
   function handle(e){
   if(e.keyCode === 13){
   //si c'est la touche "enter"
   var url = document.getElementById('url').value;
   location.href = 'http://www.flvcd.com/parse.php?kw=' + url  + '&flag=one&format=super';
   }
   return false;
   }
  </script>
 </HEAD>
 <BODY>
   <form>
   <p><input id='url' type='text' value='' onkeypress="handle(event)" /></p>
  </form>
 </BODY>
</HTML>

En faisant le test, quand je lance la page HTML (que j'ai nommé Test.html déposé sur mon bureau), je vois bien un champ vide.

Ensuite je met un URL dans le champ puis taper sur ENTRER, il me renvoie vers ma page de test avec le champ vide.

J'ai fait une erreur quelques parts certainement ???

Henri K.



EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

<!DOCTYPE html>
<html>
 <HEAD>
<title> TEST </title>
 </HEAD>
 <BODY>
  <p><input id='url' type='text' value='' onkeypress="handle(event)" /></p>
   <script type="text/javascript">
   function handle(e){
    if(e.keyCode === 13){
      //si c'est la touche "enter"
      var url = document.getElementById('url').value;
      newurl = 'http://www.flvcd.com/parse.php?kw=' + url  + '&flag=one&format=super';
      window.location.replace(newurl); 
    }
    return false;
   }
  </script>
 </BODY>
</html>


Celui la fonctionne très bien.
0
hk299792458 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Merci Jordane, ça fonctionne très bien.

Je prend note pour les balises également.

Le sujet est résolu.

Bonne journée.

Henri K.
0