Traitement des formulaires PHP
- Page précédente Variable universelle PHP
- Page suivante Validation des formulaires PHP
Les variables universelles superglobales $_GET et $_POST en PHP sont utilisées pour collecter les données du formulaire (form-data).
PHP - Un simple formulaire HTML
L'exemple suivant montre un simple formulaire HTML qui contient deux champs d'entrée et un bouton de soumission :
Exemple
<html> <body> <form action="welcome.php" method="post"> Nom : <input type="text" name="name"><br> E-mail : <input type="text" name="email"><br> <input type="submit"> </form> </body> </html>
Lorsque l'utilisateur remplit ce formulaire et clique sur le bouton de soumission, les données du formulaire sont envoyées au fichier PHP nommé "welcome.php" pour traitement. Les données du formulaire sont envoyées par la méthode HTTP POST.
Pour afficher les données soumises, vous pouvez simplement afficher (echo) toutes les variables. Le fichier "welcome.php" est comme suit :
<html> <body> Bienvenue <?php echo $_POST["name"]; ?><br> Votre adresse e-mail est : <?php echo $_POST["email"]; ?> </body> </html>
Sortie :
Bienvenue Bill Votre adresse e-mail est Bill.Gates@example.com
Vous pouvez également obtenir le même résultat en utilisant la méthode HTTP GET :
Exemple
<html> <body> <form action="welcome_get.php" method="get"> Nom : <input type="text" name="name"><br> E-mail : <input type="text" name="email"><br> <input type="submit"> </form> </body> </html>
"welcome_get.php" est comme suit :
<html> <body> Bienvenue <?php echo $_GET["name"]; ?><br> Votre adresse e-mail est : <?php echo $_GET["email"]; ?> </body> </html>
Le code ci-dessus est simple. Cependant, le contenu le plus important a été omis. Vous devez valider les données du formulaire pour éviter les failles de script.
Remarque :Attention à la sécurité lors du traitement des formulaires PHP !
Cette page ne contient pas de programme de validation de formulaire, elle ne nous montre que comment envoyer et recevoir des données de formulaire.
Cependant, les chapitres suivants vous expliqueront comment améliorer la sécurité des formulaires PHP ! La validation appropriée des formulaires est essentielle pour résister aux attaques des pirates informatiques et aux pourriels.
GET vs. POST
GET et POST créent tous deux des tableaux (par exemple, array( key => value, key2 => value2, key3 => value3, ...)). Ce tableau contient des paires clé/valeur, où la clé est le nom du contrôle de formulaire et la valeur est les données d'entrée de l'utilisateur.
GET et POST sont considérés comme $_GET et $_POST. Ils sont des variables universelles, ce qui signifie que leur accès n'a pas besoin de considérer le domaine - sans code spécial, vous pouvez accéder à eux à partir de toute fonction, classe ou fichier.
$_GET est un tableau de variables qui est transmis au script courant par les paramètres de l'URL.
$_POST est un tableau de variables qui est transmis au script courant par HTTP POST.
Quand utiliser GET ?
Informations envoyées par le biais de la méthode GETVisible pour tout le mondeTous les noms de variables et valeurs sont affichés dans l'URL. GET a une limite sur la quantité d'informations envoyées. La limite est d'environ 2000 caractères. Cependant, comme les variables sont affichées dans l'URL, il est plus facile d'ajouter la page aux favoris.
GET peut être utilisé pour envoyer des données non sensibles.
Remarque :Ne jamais utiliser GET pour envoyer des mots de passe ou d'autres informations sensibles !
Quand utiliser POST ?
Informations envoyées par le biais de la méthode POSTInvisible pour les autresTous les noms/valeurs seront intégrés dans le corps de la requête HTTP, et il n'y a pas de limite sur la quantité d'informations envoyées.Illimité.
De plus, POST prend en charge des fonctionnalités avancées, telles que l'entrée binaire multi-partie lors de l'envoi de fichiers au serveur.
Cependant, comme les variables ne sont pas affichées dans l'URL, il est impossible d'ajouter la page aux favoris.
Astuce :Les développeurs préfèrent POST pour envoyer des données de formulaire.
Donnons un coup d'œil à la manière de traiter en toute sécurité les formulaires PHP !
- Page précédente Variable universelle PHP
- Page suivante Validation des formulaires PHP