Programmation Web

Transcription

Programmation Web
Les formulaires HTML
Côté client : L’objectif d’un formulaire est d’offrir un ensemble de
champs que l’utilisateur peut remplir
Le résultat est alors envoyé au serveur qui traite les informations
via un script
Les formulaires HTML
!
!
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
Année 2009-2010
55 / 123
Les champs d’un formulaire
PHP pour le traitement
Javascript pour du contrôle de champs
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
Année 2009-2010
56 / 123
La balise form
La balise form ouvre le formulaire. Deux attributs principaux :
!
action pour indiquer
"
"
Les champs à remplir se présentent sous la forme
!
d’une zone de texte
method qui prend la valeur "get" ou "post" selon le mode de
transfert des informations au serveur
"
d’une liste de boutons dont un seul est à cocher
"
d’une liste de boutons qui sont tous sélectionnables
d’un menu déroulant
le nom du fichier à exécuter
ou l’URL d’un script
GET : apparition des valeurs saisies en paramètres de l’URL de la
page action
POST : les valeurs saisies sont transmises séparément, quantité de
données possibles plus importante
POST est préférée, car elle évite les très longues URL
Les principales balises filles (input , select , textarea) de form sont
la balises qui permettent de définir les champs qui constituent le
formulaire
Groupe de champs : la balise fieldset, souvent associée avec la
balise legend
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
Année 2009-2010
57 / 123
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
Année 2009-2010
58 / 123
La balise input
Zone de texte
Pour une zone de texte, les autres attributs sont :
Elle permet de construire une zone de texte et des listes de
sélection grâce à son attribut type
!
!
!
!
!
!
!
type="text" : une zone de texte
type="radio" : une liste à choix unique
type="checkbox" : une liste à choix multiple
type="password" : un champ mot de passe
type="hidden" : un champ caché
type="file" : pour transmettre un fichier
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
!
!
!
Exemple :
<input type="text" name="nomPrenom" size="50pxe"
maxlength="10">
Année 2009-2010
59 / 123
Liste à choix unique
!
!
Programmation Web
Année 2009-2010
60 / 123
Il faut autant de input de type checkbox que de choix proposés
Les attributs associés sont :
!
name="nomListephp " : le nom de la liste (donc commun à tous les
choix)
value="nomBoutonphp " : pour distinguer chaque choix (le nom du
bouton correspondant)
checked : ne peut être présent que dans un seul input de la liste, il
permet d’avoir un bouton coché par défaut
Exemple :
<input type="radio" name="civil" value="M" checked >Monsieur
<input type="radio" name="civil" value="Mme" >Madame
<input type="radio" name="civil" value="Mlle" >Mademoiselle
Thi-Bich-Hanh Dao (Université d’Orléans)
Thi-Bich-Hanh Dao (Université d’Orléans)
Liste à choix multiple
Il faut autant de input de type radio que de choix possibles
(boutons à cocher)
Les attributs associés sont :
!
name="nomPHP" où nomPHP sera relié au traitement PHP du
formulaire
value="texte par défaut", attribut optionnel et le texte devra être
effacé pour être modifié
size pour donner une taille à cette zone
maxlength pour donner le nombre max de caractères
Programmation Web
Année 2009-2010
61 / 123
!
!
name="nomListephp []" : le nom de la liste (donc commun à tous les
choix)
value="nomBoutonphp " : pour distinguer chaque choix (le nom du
bouton correspondant)
checked : ne peut être présent que dans un seul input de la liste, il
permet d’avoir un bouton coché par défaut
Exemple :
<input type="checkbox"
checked >Le cinéma
<input type="checkbox"
La musique
<input type="checkbox"
La lecture
<input type="checkbox"
La cuisine
Thi-Bich-Hanh Dao (Université d’Orléans)
name="loisir[]" value="cinema"
name="loisir[]" value="musique" >
name="loisir[]" value="lecture" >
name="loisir[]" value="cuisine" >
Programmation Web
Année 2009-2010
62 / 123
Menu déroulant (1/2)
Menu déroulant (2/2)
Construit par la balise select, dont la balise fille option permet de
définir les items du menu
Les attributs sont :
!
!
!
name pour le traitement PHP
size pour le nombre d’items du menu apparaissant dans le menu
déroulant
multiple dont la présence indique qu’un choix multiple est possible
(par la touche ctrl)
"
"
multiple présent =⇒ name="nomListephp []"
multiple absent =⇒ name="nomListephp "
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
Année 2009-2010
63 / 123
Zone de texte étendu
!
!
<select name="langue[]" size=3 multiple>
<option> français</option>
<option> anglais </option>
<option> espagnol</option>
<option> chinois</option>
<option> japonais</option>
</select>
Thi-Bich-Hanh Dao (Université d’Orléans)
Année 2009-2010
64 / 123
Comment terminer le formulaire et déclencher l’envoi des
informations remplies ?
!
rows pour le nombre de lignes du cadre
cols pour le nombre de colonnes du cadre
name="nomZonephp pour le traitement PHP
Encore la balise input pour définir un bouton à cliquer grâce aux
attributs
"
"
!
Exemple :
<textarea name="texte" rows="5" cols="30"></textarea>
Programmation Web
Année 2009-2010
"
65 / 123
type="submit"
value="un texte" où "un texte" apparaîtra sur le bouton créé
Raffinement : création d’un bouton supplémentaire qui annule tous
les champs remplis
"
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
La fermeture d’un formulaire
Balise textarea : zone de texte de plusieurs lignes
Les attributs principaux sont :
!
Exemple
type="reset"
value="un texte"
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
Année 2009-2010
66 / 123
Exemple d’un formulaire (1/2)
Exemple d’un formulaire (2/2)
<form action="contact.php" method="post"> <fieldset>
<legend>Nous contacter</legend>
<input type="radio" name="civil" value="M" checked >Monsieur
<input type="radio" name="civil" value="Mme" >Madame
<input type="radio" name="civil" value="Mlle" >Mademoiselle
<br>
Nom et prénom
<input type="text" name="nomPrenom" size="50pxe" maxlength="10">
<br>
Votre commentaire
<br>
<textarea name="commentaire" rows="5" cols="30">
</textarea>
<br>
<input type="submit" value="Envoyer">
<input type="reset" value="Annuler">
</fieldset></form>
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
Année 2009-2010
67 / 123
Thi-Bich-Hanh Dao (Université d’Orléans)
Programmation Web
Année 2009-2010
68 / 123

Documents pareils