SELFHTML/Quickbar  CGI/Perl  Conditions préalables/généralités


Formulaires et CGI

Cette page est un document avec du texte et des informations

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

 

Transmettre des données de formulaires avec GET ou POST

L' Hypertext Transfer Protocol (HTTP) est le protocole de transmission avec lequel le navigateur WWW et le serveur WWW é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.

 

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 WWW 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 (texte source HTML)

<form action="/cgi-bin/commentaires.pl" method=post>
<pre>
Nom:    <input name="nomutilisateur" size=40>
E-Mail: <input name="mailutilisateur" size=40>
Texte:  <textarea name="texte" rows=5 cols=34></textarea>
             <input type=submit value="envoyer les données">
</pre>
</form>

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


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

nomutilisateur=Stefan+M%FCnz&mailutilisateur=muenz@compuserve.com&texte=ceci+est+un+petit+texte

Explication:

C'est ainsi que le navigateur WWW code les données du formulaires 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.

après: Généralités sur les scripts Perl
avant: Server Side Includes en HTML
 

SELFHTML/Quickbar  CGI/Perl  Conditions préalables/généralités

© 1998 Stefan Münz / © 2001 Traduction  Serge François, 13405@free.fr