Chapitre 15 Traitement d'un formulaire en PHP
15.1 Traitement des données d'un formulaire en PHP
Tout programme PHP peut recevoir des variables.
Si on connaît par avance le nom des variables qui seront passées au
programme, il suffit de les appeler par leur nom (avec la syntaxe PHP,
c'est-à-dire précédé d'un $).
Par exemple l'appel de l'URL suivante :
autorise l'emploi des variables «$x » (qui vaut 5) et
« $y » (qui vaut 7) dans le programme
« form01.php3 ».
La question est donc : quelles variables (avec quelles
valeurs) sont transmises par un formulaire ? Les noms des
variables sont ceux des champs du formulaire.
Pour les zones de saisies, le texte tapé est transmis tel
quel. Pour les cases à cocher, la valeur est
« on » si la case a été cochée, une chaîne vide sinon.
Pour les boutons radios c'est la valeur affectée à
« VALUE » pour le bouton sélectionné. Pour les
listes déroulantes, c'est la valeur affectée à
« OPTION » pour le choix sélectionné.
15.2 Exercices
-
Écrire un formulaire qui demande le nom et l'âge de
l'utilisateur. Le bouton submit de ce formulaire provoquera
l'affichage d'une page qui saluera l'utilisateur avec cette phrase :
« Bonjour machin, vous avez xx ans... » (avec les
bonnes valeurs, bien entendu).
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/traitement-01.html
- Deux vacanciers ont abandonné à Montpellier leur bébé de 9 mois,
qui n'avait pas été sage.
Quelle ne fut pas leur surprise quand 6 mois plus tard, rentrés chez
eux à Lille, ils ont vu arriver leur enfant qui avait fait à quatre
pattes le trajet Montpellier-Lille par l'autoroute.
Écrire un formulaire PHP permet de saisir la distance parcourue par
le bébé, le nombre d'heures où il marchait par jour, et le nombre de
jours qu'il a passés sur la route. Le formulaire affichera alors la
vitesse du bébé.
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/traitement-02.html
- Écrire un formulaire qui demande le nom et le sexe de
l'utilisateur (M ou Mme). Ce formulaire appelle une page qui
affichera «Bonjour monsieur Truc» ou «Bonjour madame Bidule» suivant
le cas (avec le vrai nom de la personne, bien entendu!):
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/traitement-03.html
- Un permis de chasse à points remplace désormais le permis de
chasse traditionnel.
Chaque chasseur possède au départ un capital de 100 points. S'il tue
une poule il perd 1 point, 3 points pour un chien, 5 points pour une
vache et 10 points s'il tue son meilleur ami.
Le permis coûte 1 000 francs.
Écrire un formulaire PHP qui permet de saisir la liste des victimes
du chasseur et calcule le prix à payer pour les permis
supplémentaires nécessaires.
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/traitement-04.html
- Écrire un formulaire « calculatrice » : 2 cases pour la saisie
des opérandes, un groupe de 4 cases à cocher (ou une liste
déroulante) pour le choix de l'opération, et affichage du résultat
de l'opération.
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/traitement-05.php
- Addition à compléter : un formulaire propose une addition
incomplète que l'utilisateur doit terminer.
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/addition.php
- Devinette n°1 : vous devez deviner le nombre que le programme a
choisi. Vous proposez une solution, et le programme vous répond
« trop petit » ou « trop grand » suivant le cas, jusqu'à trouver
le bon nombre.
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/devinette01.php
- Devinette n°2 : même chose que l'exercice précédent, mais les
rôles sont inversés (c'est le programme qui devine).
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/devinette02.php
- Le pipotron : l'ordinateur vous aide à écrire n'importe
quoi.
Exemple :
http://www.grappa.univ-lille3.fr/polys/reseaux-DG/exemples/pipotron.php
Existe aussi en version :
On peut l'améliorer en lui laissant choisir les phrases au hasard.
Par exemple :