COMMENT FAIRE : Utiliser GET et POST pour le transfert de données de formulaire d'une page à une autre

Traductions disponibles Traductions disponibles
Numéro d'article: 300104 - Voir les produits auxquels s'applique cet article
Ancien nº de publication de cet article : F300104
Agrandir tout | Réduire tout

Sommaire

Résumé

Le transfert des données d'une page à une autre en vue d'un traitement est une des actions le plus couramment exécutées lors d'un développement Web avec Active Server Pages (ASP). Les exemples pas à pas contenus dans cet article montrent comment procéder. Deux techniques sont impliquées : l'une utilise la méthode POST et l'autre la méthode GET. Bien que ces approches puissent amener à des niveaux de complexité plus importants, cet article se limite simplement à illustrer la manière d'appliquer ces idées.

REMARQUE : Dans ces exemples, seules les deuxièmes pages de chaque séquence doivent être des pages .asp, car elles seules contiennent réellement du code côté serveur pour la démonstration. Les pages initiales peuvent être soit des pages .htm soit des pages .asp.

Utilisation de la méthode POST

Lorsque vous utilisez la méthode POST, vous envoyez les valeurs des contrôles HTML d'un formulaire à la page spécifiée dans l'attribut d'action. Pour ce faire, procédez comme suit :
  1. Créez une page .htm que vous nommez Gatherdata_post.htm. Pour effectuer cette opération dans Visual InterDev version 6.0, cliquez avec le bouton droit sur le n?ud du projet dans l'Explorateur de projets, cliquez sur Ajouter, sur Page HTML, tapez Gatherdata_post.htm comme nom de la page, puis cliquez sur Ouvrir.
  2. Collez le code suivant dans la nouvelle page : REMARQUE : Avant de coller ce code dans la page, vous devez effacer le code par défaut qui est ajouté par InterDev lorsque de la création de la page. Sinon, vous risquez d'avoir des balises redondantes.
    <html>
    <head>
    </head>
    <body>
    <FORM action="RetrieveData_Post.asp" id=form1 method=post name=form1>
                 Prénom :
                 <br>
                 <INPUT id="txtFirstName" name="txtFirstName" >
                 <br>
                 Nom :
                 <br>
                 <INPUT id="txtLastName" name="txtLastName" >
                 <br>
                 <INPUT type="submit" value="Submit">
    </FORM>
    </body>
    </html>
  3. : Avant de coller ce code dans la page, vous devez effacer le code par défaut qui est ajouté par InterDev lorsque de la création de la page. Sinon, vous risquez d'avoir des balises redondantes. Enregistrez la page. Pour ce faire, cliquez sur Enregistrer Gatherdata_post.htm dans le menu Fichier de Visual InterDev IDE.
  4. : Avant de coller ce code dans la page, vous devez effacer le code par défaut qui est ajouté par InterDev lorsque de la création de la page. Sinon, vous risquez d'avoir des balises redondantes. Créez une autre page que vous nommez Retrievedata_post.asp. Collez le code suivant dans cette page, puis enregistrez-la :
    <%@ Language=VBScript %>
    <html>
    <head>
    </head>
    <body>
    <%
    Response.Write("Prénom : " & Request.Form("txtFirstName") & "<br>")
    Response.Write("Nom : " & Request.Form("txtLastName") & "<br>")
    %>
    </body>
    </html>
    
    
  5. : Avant de coller ce code dans la page, vous devez effacer le code par défaut qui est ajouté par InterDev lorsque de la création de la page. Sinon, vous risquez d'avoir des balises redondantes. Exécutez Gatherdata_post.htm en cliquant avec le bouton droit sur la page puis en sélectionnant Afficher dans le navigateur. Entrez quelques prénoms et noms, puis cliquez sur Soumettre. Notez que les données que vous avez entrées dans Getdata_post.htm ont été envoyées par le biais de la méthode HTTP POST à la page Retrievedata_post.asp pour être récupérées à l'aide de la collection Request.Form.

Utilisation de la méthode GET

Si vous utilisez la méthode GET, vous envoyez les valeurs des contrôles HTML d'un formulaire à la page spécifiée dans l'attribut d'action en procédant quasiment de la même manière que pour l'approche POST décrite précédemment. Vous noterez cependant que les valeurs sont envoyées dans la méthode QueryString. Le principal problème à prendre en compte lors de l'utilisation de GET plutôt que de POST est que les valeurs sont visibles dans l'URL.

Pour utiliser la méthode GET, procédez comme suit :
  1. Créez une page .htm que vous nommez Gatherdata_get.htm. Pour effectuer cette opération dans Visual InterDev version 6.0, cliquez avec le bouton droit sur le n?ud du projet dans l'Explorateur de projets, cliquez sur Ajouter, sur Page HTML, tapez Gatherdata_get.htm comme nom de la page, puis cliquez sur Ouvrir.
  2. Collez le code suivant dans la nouvelle page : REMARQUE : Avant de coller ce code dans la page, vous devez effacer le code par défaut qui est ajouté par InterDev lorsque de la création de la page. Sinon, vous risquez d'avoir des balises redondantes.
    <html>
    <head>
    </head>
    <body>
    <FORM action="RetrieveData_Get.asp" id=form1 method=GET name=form1>
                 Prénom :
                 <br>
                 <INPUT id="txtFirstName" name="txtFirstName" >
                 <br>
                 Nom :
                 <br>
                 <INPUT id="txtLastName" name="txtLastName" >
                 <br>
                 <INPUT type="submit" value="Submit" id=submit1 name=submit1>
    </FORM>
    </body>
    </html>
  3. : Avant de coller ce code dans la page, vous devez effacer le code par défaut qui est ajouté par InterDev lorsque de la création de la page. Sinon, vous risquez d'avoir des balises redondantes. Enregistrez la page. Pour ce faire, cliquez sur Enregistrer Gatherdata_get.htm dans le menu Fichier de Visual InterDev IDE.
  4. : Avant de coller ce code dans la page, vous devez effacer le code par défaut qui est ajouté par InterDev lorsque de la création de la page. Sinon, vous risquez d'avoir des balises redondantes. Créez une autre page que vous nommez Retrievedata_get.asp. Collez le code suivant dans cette page, puis enregistrez-la :
    <%@ Language=VBScript %>
    <html>
    <head>
    </head>
    <body>
    <%
    Response.Write("Prénom : " & Request.QueryString("txtFirstName") & "<br>")
    Response.Write("Nom : " & Request.QueryString("txtLastName") & "<br>")
    %>
    </body>
    </html>
  5. : Avant de coller ce code dans la page, vous devez effacer le code par défaut qui est ajouté par InterDev lorsque de la création de la page. Sinon, vous risquez d'avoir des balises redondantes. Exécutez Gatherdata_get.htm en cliquant avec le bouton droit sur la page puis en sélectionnant Afficher dans le navigateur. Entrez quelques prénoms et noms, puis cliquez sur Soumettre. Notez que les données qui sont entrées dans Getdata_get.htm sont envoyées par le biais de la méthode GET à la page Retrievedata_get.asp pour être récupérées à l'aide de la collection Request.QueryString. En conclusion, la collection QueryString représente l'emplacement dans lequel la page ASP récupère vos données lorsque vous utilisez GET pour envoyer la page, tandis que la collection Form sert à la récupération des données lorsque POST est implémenté.

RÉFÉRENCES

Pour plus d'informations, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft :
254742 IIS : Analyse ASP des données de formulaire HTTP à l'aide d'une collection générique
208427 INFO : Longueur maximale d'une URL fixée à 2 083 caractères dans Internet Explorer
254786 PRB : Chaîne de requête tronquée

Propriétés

Numéro d'article: 300104 - Dernière mise à jour: mardi 29 avril 2003 - Version: 3.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Active Server Pages 4.0
Mots-clés : 
kbasp kbaspobj kbcodesnippet kbgrpdsasp kbhowto kbhowtomaster kbjscript kbsample kbscript kbvbscript KB300104
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com