Les Formulaires en PHP
Les formulaires permettent à l’utilisateur d’envoyer des informations à PHP. Par exemple : un nom, un email, un mot de passe, un âge ou un message.
1. La base d’un formulaire
Un formulaire HTML utilise la balise <form>. Il a surtout deux attributs importants :
- action : la page qui reçoit les données
- method : la méthode utilisée pour envoyer les données
<form action="traitement.php" method="post">
<input type="text" name="username">
<button type="submit">Envoyer</button>
</form>
2. Formulaire avec GET
La méthode GET envoie les données directement dans l’URL. Elle est pratique pour une recherche ou un filtre.
Exemple : une barre de recherche.
Résultat GET
> Aucun nom reçu avec GET.
$usernameGet = $_GET['usernameGet'];
3. Formulaire avec POST
La méthode POST envoie les données sans les afficher dans l’URL. Elle est utilisée pour les formulaires plus sérieux : connexion, inscription, contact, etc.
Résultat POST
> Aucun formulaire POST envoyé.
$usernamePost = $_POST['usernamePost'];
4. Différence entre GET et POST
| Méthode | Utilisation | Visible dans l’URL |
|---|---|---|
| GET | Recherche, filtre, tri | Oui |
| POST | Connexion, inscription, formulaire complet | Non |
5. Formulaire complet
Voici un exemple avec plusieurs types de champs HTML.
Résultat formulaire complet
> Remplis le formulaire pour voir le résultat ici.
6. Envoyer les données vers une autre page
Pour envoyer les données vers une autre page, on change l’attribut action.
<form action="resultat.php" method="post">
<input type="text" name="fullname">
<input type="email" name="email">
<button type="submit">Envoyer</button>
</form>
Ici, les données seront envoyées vers la page resultat.php.
7. Récupérer les données sur une autre page
Dans la page resultat.php, on récupère les données avec $_POST.
<?php
$fullname = $_POST['fullname'];
$email = $_POST['email'];
?>
<h1>Résultat</h1>
<p>Nom : <?= $fullname ?></p>
<p>Email : <?= $email ?></p>
8. Afficher les données dans un tableau
Une fois les données récupérées, on peut les afficher proprement dans un tableau HTML.
<table>
<tr>
<th>Nom</th>
<th>Email</th>
</tr>
<tr>
<td><?= $fullname ?></td>
<td><?= $email ?></td>
</tr>
</table>
Exemple affichage tableau
> Données reçues :
| Nom | |
|---|---|
| Fred | fred@email.com |