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 :

<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 Email
Fred fred@email.com