Vers des pages WWW interactives

Un exemple de formulaire HTML

La plus simple méthode d'interaction : ISINDEX

La commande HTML <ISINDEX> est la manière la plus simple pour réaliser une interaction dans une page WWW.

La plus simple méthode d'interaction ISINDEX (2)

La plus simple méthode d'interaction ISINDEX (3)

On utilise un programme CGI (script, langage compilé) pour :

  1. parser les paramètres,
  2. déclencher des actions (Exemple : consulter une BD, etc...),
  3. générer le code HTML pour renvoyer au client une page WWW avec les résultats de la recherche.

The Common Gateway Interface (CGI)

Ou comment écrire des pages interactives

Comment écrire un programme CGI ?

Attention à la sécurité

Comment écrire un programme CGI ? (2)

Langages utilisables

Etude d'un exemple simple : cas de <ISINDEX>

Exemple d'utilisation d'ISINDEX : les resultats
#!/bin/sh
echo Content-type: text/html
echo
# 1) Texte saisi = vide ?
if [ $# = 0 ]
then
    message="Vous n'avez pas entre de parametres dans la boîte ISINDEX"
else
    message="Vous avez entré la chaine de caractères : $* dans la boîte ISINDEX"
fi
# 2) On génère la page HTML avec les resultats
cat << EOM
<TITLE>Exemple d'utilisation d'ISINDEX</TITLE>
<H1>Exemple d'utilisation d'ISINDEX</H1>
<ISINDEX>
# affichage du texte saisi ou d'un message si texte vide
$message
EOM

Etude d'un exemple simple : cas de <ISINDEX> (2)

Exemples de résultats après saisie et validation d'une chaîne :

Les FORMs en HTML 4.0 : l'élément FORM

l'élément FORM

Les attributs de l'élément FORM

Les FORMs en HTML 4.0 : l'élément INPUT

Spécifie un élément permettant des entrées dans une FORM.

<FORM METHOD="POST" ACTION="http://www.essi.fr/~buffa/
test.cgi">
...
<INPUT TYPE="text" size=15 NAME="Nom" VALUE="Buffa">
...
</FORM>

Attributs de l'élément INPUT

<INPUT TYPE="text" size=15 NAME="Nom" VALUE="Buffa">
L'attribut TYPE du tag INPUT
  <INPUT TYPE="password" size=15 NAME="passwd">
L'attribut password du tag INPUT
  <INPUT TYPE="checkbox" size=15 NAME="ExempleCheckbox">
L'attribut CHECKBOX du tag INPUT

Les FORMs en HTML 4.0 : l'élément INPUT (2)

Les FORMs en HTML 4.0 : l'élément INPUT (3)

Les FORMs en HTML 4.0 : l'élément SELECT

l'élément <SELECT> Permet de créer des menus d'option ou des listes

Attributs de l'élément SELECT :

Les FORMs en HTML 4.0 : l'élément SELECT (2)

Attributs de l'élément SELECT (suite):

Attributs de l'élément OPTION

Les FORMs en HTML 4.0 : l'élément TEXTAREA

Crée une zone d'entrée de texte multiligne.

Attributs de l'élément TEXTAREA :

Les FORMs en HTML 4.0 : beaucoup de nouveautés

Ce cours n'étant pas un cours HTML, nous n'entrerons pas dans les détails.
Voir http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.4.1

L'élément BUTTON

L'élément FIELDSET

L'élément OPTGROUP

Envoi du contenu d'une FORM : GET et POST

Il existe deux méthodes : GET et POST, fonctions de la valeur de l'attribut METHOD de l'élément FORM

<FORM METHOD="POST" ACTION="http://www.essi.fr/buffa/test.cgi">

Envoi du contenu d'une FORM : codage des données

Le codage est automatique

Réception des données par le CGI : dépend de la méthode

La récupération du contenu des FORMS par le CGI dépend de la méthode employée.

Cas du passage forcé de paramètres : script appelé directement

On peut appeler un CGI en passant les paramètres "à la main"

Récupération par le CGI :

Décodage des données par le CGI : existence de nombreux outils

Envoi de la réponse au client : deux cas

Envoi de la réponse au client : référence à un document

Envoi de la réponse au client : référence à un document (2)

Ecriture de programmes CGI : variables d'environnement

Ecriture de programmes CGI : variables d'environnement (2)

CGI avec "Non Parsed Headers": afficher des lignes "au vol"

CGI avec "Non Parsed Headers" : conventions de nommage

Trucs et astuces !

Trucs et astuces !(2)

Les Server Side Includes : compteurs, includes, etc...

Les Server Side Includes : format d'appel

Les Server Side Includes : format d'appel (2)

Les Server Side Includes : variables d'environnement