Tutoriel PHP

ACCUEIL PHP Introduction PHP Installation PHP Syntaxe PHP Commentaires PHP Variables PHP Écho PHP / Impression Types de données PHP Chaînes PHP Numéros PHP Mathématiques PHP Constantes PHP Opérateurs PHP PHP Si... Sinon... Sinon Commutateur PHP Boucles PHP Fonctions PHP Tableaux PHP Superglobales PHP Expression régulière PHP

Formulaires PHP

Gestion des formulaires PHP Validation de formulaire PHP Formulaire PHP requis URL/courriel du formulaire PHP Formulaire PHP terminé

PHP Avancé

Date et heure PHP Inclure PHP Gestion des fichiers PHP Fichier PHP Ouvrir/Lire Création/écriture de fichier PHP Téléchargement de fichier PHP Cookies PHP Séances PHP Filtres PHP Filtres PHP avancés Fonctions de rappel PHP PHPJSON Exception PHP

POO PHP

PHP Qu'est-ce que la POO Classes/Objets PHP Constructeur PHP Destructeur PHP Modificateurs d'accès PHP Héritage PHP Constantes PHP Classes abstraites PHP Interface PHP Caractéristiques PHP Méthodes statiques PHP Propriétés statiques PHP Espaces de noms PHP Itérables PHP

Base de données MySQL

Base de données MySQL Connexion MySQL Créer une base de données MySQL Créer une table MySQL MySQL Insérer des données MySQL obtenir le dernier ID MySQL Insérer plusieurs MySQL préparé MySQL Sélectionner les données MySQL Où Trier MySQL par MySQL Supprimer les données Données de mise à jour MySQL Données de limite MySQL

XML PHP

Analyseurs PHP XML Analyseur PHP SimpleXML PHP SimpleXML - Obtenir Expatriation PHP XML PHP XML DOM

PHP -AJAX

Introduction à AJAX PHP AJAX Base de données AJAX XML AJAX Recherche en direct AJAX Sondage AJAX

Exemples PHP

Exemples PHP Compilateur PHP Questionnaire PHP Exercices PHP Certificat PHP

Référence PHP

Présentation de PHP Tableau PHP Calendrier PHP Date PHP Annuaire PHP Erreur PHP Exception PHP Système de fichiers PHP Filtre PHP FTP PHP PHPJSON Mots clés PHP PHP LibxmlComment Messagerie PHP Mathématiques PHP Divers PHP PHP MySQL Réseau PHP Contrôle de sortie PHP Expression régulière PHP PHP SimpleXML Flux PHP Chaîne PHP Gestion des variables PHP Analyseur PHP XML Code postal PHP Fuseaux horaires PHP

Gestion des formulaires PHP


Les superglobales PHP $_GET et $_POST sont utilisées pour collecter les données de formulaire.


PHP - Un formulaire HTML simple

L'exemple ci-dessous affiche un formulaire HTML simple avec deux champs de saisie et un bouton d'envoi :

Exemple

<html>
<body>

<form action="welcome.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>

Lorsque l'utilisateur remplit le formulaire ci-dessus et clique sur le bouton Soumettre, les données du formulaire sont envoyées pour être traitées dans un fichier PHP nommé "welcome.php". Les données du formulaire sont envoyées avec la méthode HTTP POST.

Pour afficher les données soumises, vous pouvez simplement faire écho à toutes les variables. Le "welcome.php" ressemble à ceci :

<html>
<body>

Welcome <?php echo $_POST["name"]; ?><br>
Your email address is: <?php echo $_POST["email"]; ?>

</body>
</html>

La sortie pourrait ressembler à ceci :

Welcome John
Your email address is [email protected]

Le même résultat peut également être obtenu en utilisant la méthode HTTP GET :

Exemple

<html>
<body>

<form action="welcome_get.php" method="get">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>

et "welcome_get.php" ressemble à ceci :

<html>
<body>

Welcome <?php echo $_GET["name"]; ?><br>
Your email address is: <?php echo $_GET["email"]; ?>

</body>
</html>

Le code ci-dessus est assez simple. Cependant, il manque la chose la plus importante. Vous devez valider les données du formulaire pour protéger votre script contre les codes malveillants.

Pensez SÉCURITÉ lors du traitement des formulaires PHP !

Cette page ne contient aucune validation de formulaire, elle montre simplement comment vous pouvez envoyer et récupérer des données de formulaire.

Cependant, les pages suivantes montreront comment traiter les formulaires PHP en toute sécurité ! Une bonne validation des données du formulaire est importante pour protéger votre formulaire contre les pirates et les spammeurs !



GET ou POST

GET et POST créent tous deux un tableau (par exemple array( key1 => value1, key2 => value2, key3 => value3, ...)). Ce tableau contient des paires clé/valeur, où les clés sont les noms des contrôles de formulaire et les valeurs sont les données d'entrée de l'utilisateur.

GET et POST sont traités comme $_GET et $_POST. Ce sont des superglobaux, ce qui signifie qu'ils sont toujours accessibles, quelle que soit leur portée - et vous pouvez y accéder à partir de n'importe quelle fonction, classe ou fichier sans rien faire de spécial.

$_GET est un tableau de variables transmis au script courant via les paramètres d'URL.

$_POST est un tableau de variables transmis au script courant via la méthode HTTP POST.


Quand utiliser GET ?

Les informations envoyées depuis un formulaire avec la méthode GET sont visibles par tous (tous les noms et valeurs des variables sont affichés dans l'URL). GET a également des limites sur la quantité d'informations à envoyer. La limite est d'environ 2000 caractères. Cependant, comme les variables sont affichées dans l'URL, il est possible de marquer la page. Cela peut être utile dans certains cas.

GET peut être utilisé pour envoyer des données non sensibles.

Remarque : GET ne doit JAMAIS être utilisé pour envoyer des mots de passe ou d'autres informations sensibles !


Quand utiliser POST ?

Les informations envoyées à partir d'un formulaire avec la méthode POST sont invisibles pour les autres (tous les noms/valeurs sont intégrés dans le corps de la requête HTTP) et n'ont aucune limite sur la quantité d'informations à envoyer.

De plus, POST prend en charge des fonctionnalités avancées telles que la prise en charge de l'entrée binaire en plusieurs parties lors du téléchargement de fichiers sur le serveur.

Cependant, étant donné que les variables ne sont pas affichées dans l'URL, il n'est pas possible de marquer la page.

Les développeurs préfèrent POST pour envoyer des données de formulaire.

Ensuite, voyons comment nous pouvons traiter les formulaires PHP de manière sécurisée !


Exercices PHP

Testez-vous avec des exercices

Exercer:

Si le formulaire dans la section blanche ci-dessous est soumis, comment pouvez-vous, dans welcome.php, sortir la valeur du champ "prénom" ?

<form action="welcome.php" method="get"> First name: <input type="text" name="fname"> </form>
<html> <body> Welcome <?php echo ; ?> </body> </html>