PHP_cours-avance.pdf

(2661 KB) Pobierz
Informatique de gestion
1
ECIG1B10IGDE2b
Technologie Internet
1IG
Année académique 2014 - 2015
2
1
PHP- formulaires
1.
Transmettre des données de page en page
1.1 Transmettre des données par l’URL
1.2 Transmettre des données par les formulaires
Les champs d’un formulaire
2.1 les zones de texte
2.2 les grandes zones de texte
2.3 les cases à cocher (et groupes)
2.4 les boutons d’option
2.5 les champs cachés
2.6 les listes déroulantes
Boutons d’envoi multiples
Réinitialisation d’un formulaire
Exemple de formulaire
Récupération des données d’un formulaire
Gestion des boutons multiples
les failles de sécurité
codage des formulaires
HELHA - info gestion -Montignies
Cours avancé
3
2.
3.
4.
5.
6.
7.
8.
9.
Chapitre 3
PHP- formulaires
1.
Transmettre des données de page en page
Un des aspects intéressants de PHP, c'est qu'on peut se transmettre des
variables de page en page.
C'est pratique, par exemple pour transmettre le nom du visiteur.
En effet, les variables sont détruites une fois que la page PHP est générée.
Alors comment récupérer leur valeur dans une autre page ?
Chapitre 3
HELHA - info gestion -Montignies
Cours avancé
4
2
PHP- formulaires
1.1
Transmettre des données par l’URL
URL = Uniform Resource Locator
Le point d'interrogation sépare le nom de la page PHP des paramètres. Ensuite, ces
derniers s'enchaînent selon la forme nom=valeur et sont séparés les uns des autres
par le symbole &.
La seule limite est la longueur de l'URL. En général il n'est pas conseillé de dépasser les
256 caractères.
Chapitre 3
HELHA - info gestion -Montignies
Cours avancé
5
PHP- formulaires
1.1
Transmettre des données par l’URL
On insère donc dans "index.php" la ligne suivante
Rem : le "&" est remplacé par "&amp" (validation W3C)
Tous les & seront transformés en symboles & par le navigateur du visiteur.
Le
World Wide Web Consortium,
abrégé par le sigle
W3C,
est un organisme de
normalisation chargé de promouvoir la compatibilité des technologies du World
Wide Web telles que HTML
Chapitre 3
HELHA - info gestion -Montignies
Cours avancé
6
3
PHP- formulaires
1.1
Transmettre des données par l’URL
Nous allons récupérer les paramètres en PHP dans la page " bonjour.php "
par l’intermédiaire du tableau associatif $_GET.
Rem : les visiteurs peuvent trafiquer les URL.
On ne peut donc avoir confiance dans les paramètres passés.
Chapitre 3
HELHA - info gestion -Montignies
Cours avancé
7
PHP- formulaires
1.1
Il faut donc contrôler ces paramètres.
Transmettre des données par l’URL
La fonction isset() permet de vérifier si une variable est définie ou non.
Le transtypage est une technique qui permet de convertir une variable dans le type
de données souhaité. Cela permet de s'assurer par exemple qu'une variable est bien
un int (nombre entier).
http://localhost/tests/bonjour.php?nom=Dupont&prenom=Jean&repeter=8
Chapitre 3
HELHA - info gestion -Montignies
Cours avancé
8
4
PHP- formulaires
1.2.
Transmettre des données par les formulaires
formulaire
visiteur
serveur
formulaire créé en
HTML
Traitement des infos
fournies par le formulaire au
script côté serveur en
PHP
<form method="post" action="cible.php">
<p>
On mettra ici les éléments de notre formulaire.<br />
Notez qu'il n'y a pour l'instant pas de PHP.
</p>
</form>
Chapitre 3
HELHA - info gestion -Montignies
Cours avancé
9
PHP- formulaires
1.2.
Transmettre des données par les formulaires
<form method="post" action="cible.php">
2 méthodes pour envoyer les données du formulaire :
La méthode GET
(celle qui est utilisée par défaut si rien n'est renseigné) fait circuler
les informations du formulaire en clair dans la barre d'adresse en suivant le format ci-
après :
La méthode POST,
quant à elle, transmet les informations du formulaire de
manière masquée mais non cryptée.
La méthode POST est préférée lorsqu'il y a un nombre important de données
à transmettre ou bien lorsqu'il faut envoyer des données sensibles comme
des mots de passe. Dans certains cas, seule la méthode POST est requise :
un « upload » de fichier par exemple.
Chapitre 3
HELHA - info gestion -Montignies
Cours avancé
10
5
Zgłoś jeśli naruszono regulamin