Skip to main content

Traiter une soumission de formulaire en PHP

En PHP, la manière principale de communiquer des données au serveur est pas la soumission de formulaire. Voyons un exemple simple avec un formulaire de connexion.

Le formulaire

Commençons déjà par écrire notre formulaire dans un document HTML : login.html

Base du formulaire

<form method="post" action="login.php">
  
</form>

Nous allons utiliser la méthode HTTP POST car nous devons envoyer des données au serveur. Ensuite dans l'attribut action nous mettons le chemin sur le serveur denotre script PHP qui va gérer la soumission du formulaire.

Les champs

Ajoutons maintenant les champs dont nous avons besoin pour la connexion : un champs de type text pour le login et un champs de type password pour le mot de passe, ainsi qu'un boutton de soumission.

<form method="post" action="login.php">
  
  <input type="text" name="login" required/>
  <input type="password" name="password" required/>
  
  <button type="submit">Connexion</button>
  
</form>

L'attribut required permet d'empêcher la soumission du formulaire si le champs n'est pas remplit. Chaque champs possède une attribut name pour l'identifier lors du traitement dans le scipt PHP.

Voilà notre formulaire est prêt !

Le script PHP

Créez maintenant un script login.php afin de traiter la soumission du formulaire.

Récupération des données

Afin de récupérer des données envoyées via une requête POST, il faut faire appel dans le code PHP à la variable globale $_POST. Mais avant de récupérer les valeurs, il faut vérifier qu'elles sont bien présentes grâce à la fonction isset :


if(!(isset($_POST["login"]) && isset($_POST["password"]))){
  Header("Location: index.html");
}

Si ce n'est pas le cas, on utilise Header pour rediriger vers le formulaire. On peut ensuite récupérer les valeurs des champs à partir de leurs noms :