SELFHTML/Quickbar
CGI/Perl
Conditions préalables/généralités
![]() |
Formulaires et CGI |
![]() |
|
![]() |
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.
![]() ![]() |
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.
<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> |
nomutilisateur=Stefan+M%FCnz&mailutilisateur=muenz@compuserve.com&texte=ceci+est+un+petit+texte |
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:![]() |
![]() |
avant:![]() |
![]() |
SELFHTML/Quickbar
CGI/Perl
Conditions préalables/généralités
Serge François, 13405@free.fr