Récupérer les données d’un formulaire en PHP
Les données d’un formulaire HTML peuvent être récupérées et traitées de différentes manières, par exemple :
- En utilisant un langage de script tel que JavaScript, JQuery, etc.
- En utilisant un langage côté serveur tel que PHP.
Dans ce tutoriel, nous allons voir comment récupérer les données d’un formulaire avec PHP, et les différentes méthodes qui peuvent être utilisées.
Création du formulaire HTML
Pour créer un formulaire pour la récupération des données, il faut spécifier deux attributs de formulaire importants qui contrôlent la façon dont les données du formulaire sont traitées chaque fois qu’elles sont soumises. Ces deux attributs de formulaire sont les suivants :
- L’attributs « method »
- L’attributs « action »
<form action="" method=""> ... </form>
- L’attribut « action » : spécifie l’emplacement du script PHP à traiter lors de sa soumission. Si l’emplacement du script n’est pas spécifié, le navigateur soumet le formulaire en utilisant l’emplacement actuel du script PHP.
- L’attributs « method » : précise le type de méthode que le formulaire utilisera pour envoyer les données. Nous avons deux méthodes, la méthode GET et la méthode POST.
Méthode d’envoi des données
Les navigateurs clients peuvent envoyer des informations à un serveur Web de deux manières différentes :
- Méthode GET
- Méthode POST
Comment récupérer les données d’un formulaire envoyé via GET
Lorsque vous soumettez un formulaire avec la méthode GET, PHP fournit une variable superglobale, appelée $_GET. PHP utilise cette variable $_GET pour créer un tableau associatif avec des clés pour accéder à toutes les informations envoyées. La clé est créée en utilisant les valeurs des attributs « name ».
<input type="text" name="firstname" />
Exemple – Méthode GET:
Formulaire HTML
<form action="method-get.php" method="get"> Nom : <input type="text" name="nom" /> Age : <input type="text" name="age" /> Adresse : <input type="text" name="adresse" /> <input type="submit" name="submit" /> </form>
Script PHP
<?php // Vérifier si le formulaire est soumis if ( isset( $_GET['submit'] ) ) { /* récupérer les données du formulaire en utilisant la valeur des attributs name comme clé */ $nom = $_GET['nom']; $age = $_GET['age']; $adresse = $_GET['adresse']; // afficher le résultat echo '<h3>Informations récupérées en utilisant GET</h3>'; echo 'Nom : ' . $nom . ' Age : ' . $age . ' Adresse : ' . $adresse; exit; } ?>
La fonction PHP isset() est utilisée pour déterminer si une variable est définie et n’est pas nulle.
D’abord, la fonction isset() vérifie si le formulaire a été soumis en utilisant la valeur de l’attribut « name » de l’élément « submit » (name=’submit’) comme clé et passe la valeur à la variable superglobale $_GET[]. Ceci est dû au fait que les données du formulaire sont stockées dans le tableau superglobal $_GET[] par PHP lorsqu’elles sont soumises par la méthode GET.
Ensuite, les données du formulaire nom, age et adresse sont récupérées en utilisant la même méthode, en passant leurs valeurs respectives de l’attribut « name » dans le paramètre du tableau $_GET[‘name’], et chacune est assignée à un nom de variable qui a été utilisé pour afficher les résultats.
Comment récupérer les données d’un formulaire envoyé via POST
La méthode POST du formulaire envoie des informations via l’en-tête HTTP. Toutes les paires nom/valeur envoyées par cette méthode sont invisibles pour les autres personnes puisque toutes les informations sont intégrées dans le corps de la requête HTTP.
Lorsque vous soumettez un formulaire à un serveur via la méthode POST, PHP fournit une variable superglobale appelée $_POST. La variable $_POST est utilisée par PHP pour créer un tableau associatif avec une clé d’accès ($_POST[‘name’]). La clé est créée automatiquement par PHP lorsque le formulaire est soumis. PHP utilise l’attribut « name » de l’input du formulaire pour créer la clé.
Exemple – Méthode POST:
Formulaire HTML
<form action="method-post.php" method="post"> Nom : <input type="text" name="nom" /> Age : <input type="text" name="age" /> Adresse : <input type="text" name="adresse" /> <input type="submit" name="submit" /> </form>
Script PHP
<?php // Vérifier si le formulaire est soumis if ( isset( $_POST['submit'] ) ) { /* récupérer les données du formulaire en utilisant la valeur des attributs name comme clé */ $nom = $_POST['nom']; $age = $_POST['age']; $adresse = $_POST['adresse']; // afficher le résultat echo '<h3>Informations récupérées en utilisant POST</h3>'; echo 'Nom : ' . $nom . ' Age : ' . $age . ' Adresse : ' . $adresse; exit; } ?>
La ligne isset( $_POST['submit'] )
vérifie si le formulaire est soumis en utilisant la fonction isset(), mais ne fonctionne que si l’input a un attribut (name=’submit’).
Les données du formulaire sont stockées dans un tableau de variables $_POST[‘name’] puisqu’elles sont soumises par la méthode POST, et la valeur de l’attribut name de l’input (name=’adresse’) est utilisée pour accéder aux données des champs du formulaire. La même chose est utilisée pour $_POST[‘nom’] et $_POST[‘age’]. Les données du formulaire sont ensuite affectées à une variable qui a été utilisée pour afficher les résultats.
C’est très bien fait.
Merci
merci
Salut,
votre site est super !
bons tutos et articles, mais les liens d’inscription sont invisibles, de même que ceux de connexion quand on clique sur connexion.
Certaines lignes de codes de tutos sont coupées vers la fin donc on ne sait pas la suite, parfois le code peut être téléchargé et parfois non.
.