SELFHTML

Formulaires HTML et CGI

Page d'information: vue d'ensemble

vers le bas Transmettre des données de formulaires avec GET ou POST
vers le bas Flux de données lors de la transmission de données de formulaire

 vers le bas 

Transmettre des données de formulaires avec GET ou POST

L' Hypertext Transfer Protocol (HTTP) est le protocole de transmission avec lequel le navigateur Web et le serveur Web échangent des données. Pour cela existent des commandes HTTP. Deux commandes HTTP sont significatives dans le contexte de la transmission de données de formulaire:

Si vous voulez mettre en oeuvre un script CGI existant, vous devez savoir d'après laquelle des deux méthodes le script concerné attend les données. Normalement, ceci est documenté par l'auteur du script CGI. Certains scripts sont assez intelligents pour vérifier les deux possibilités: dans ce cas, peu importe la méthode de transmission que vous avez choisie dans le formulaire HTML. Si vous écrivez vos propres scripts, vous devez fixer la méthode de transmission ou bien également programmer de façon suffisamment intelligente pour que la méthode mentionnée dans le formulaire HTML soit sans importance.

 vers le hautvers le bas 

Flux de données lors de la transmission de données de formulaire

Un formulaire HTML typique est constitué de champs nommés (par exemple pour le nom, l'adresse, et le texte de commentaire). Lors de la transmission d'un formulaire rempli à l'ordinateur serveur ou à un programme CGI, les données doivent être transmises de telle façon que le script CGI puisse reconnaître de quels champs de saisie le formulaire est constitué, et quelles données l'utilisateur a entrées dans quel champ. C'est pourquoi il existe une méthode de codage particulière qui sépare les champs de formulaire de leurs données. Cette méthode de codage utilise les règles suivantes:

L'exemple suivant montre dans un premier temps le texte source HTML d'un formulaire HTML et au dessous une image de l'aspect du formulaire dans le navigateur Web avec les saisies de l'utilisateur. Sous l'image, vous voyez à quoi ressemble le flux de données d'un formulaire d'après les règles de codage et après que l'utilisateur ait envoyé le formulaire.

Exemple: formulaire HTML (HTML-texte source)

<form action="/cgi-bin/comments.pl" method="post">
<p>Name:<br>
<input name="nom_utilisateur" size="40"></p>
<p>E-Mail:<br>
<input name="courriel_utilisateur" size="40"></p>
<p>Text:<br>
<textarea name="Texte" rows="5" cols="50"></textarea></p>
<p><input type="submit" value="envoyer les données du formulaire"></p>
</form>

Exemple: image du formulaire HTML dans le navigateur Web avec les saisies de l'utilisateur

formulaire

Exemple: flux de données du formulaire sur la base de ces saisies

nomutilisateur=Stefan+M%FCnz&courriel_utilisateur=stefan.muenz@selfhtml.org&texte=ceci+est+un+petit+texte

Explication:

C'est ainsi que le navigateur Web code les données du formulaire lors de l'envoi du formulaire. Cette chaîne de caractères est transmise avec l'une des méthodes permises POST ou GET au script CGI appelé. Le script CGI peut, en connaissance des règles de codage, décortiquer ce flux de données pour le traiter par exemple champ par champ. Il y a une méthode plus élégante qui consiste à confier cela à un module Perl qui se chargera de ce travail - le Autre page d'information module CGI.

 vers le haut
page suivante Autre page d'information Généralités sur les scripts Perl
page précédente Autre page d'information Server Side Includes en HTML
 

© 2001 Stefan Münz / © 2003 Traduction Adresse électronique Serge François, 13405@free.fr
Adresse électronique selfhtml@fr.selfhtml.org