Lire les données d'un formulaire HTML avec PHP

Exemple simple

Quand un internaute saisit des informations dans un formulaire, celles-ci sont facilement récupérables dans une variable PHP, grâce aux attributs name dans les champs de texte.

Voici un formulaire HTML tout simple, contenant une zone de texte et un bouton d’envoi OK.

Le code de prenom.html :

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
	</head>
	<body>
		<form method="post" action="reponse.php">
		<label>Prénom :</label>
		<input type="text" name="prenom">
		<input type="submit" value="OK">
		</form>
	</body>
</html>

Lorsqu’on clique sur le bouton OK, le formulaire envoie les données saisies sur la page reponse.php précisée dans la balise <form>. Ces données seront envoyées d’une manière cachée, car nous avons précisé : method=’post’. Si nous mettons method=’get’, les données saisies seront visibles dans la barre d’adresse du navigateur.

Tout ce qui sera saisi dans le champ <input type=’text’ name=’prenom’> se stockera dans la variable $_POST[‘prenom’], il ne restera plus qu’à afficher la réponse grâce à la commande echo.

Attention : n’utilisez jamais d’accents ni d’espaces dans les valeurs des attributs name.

Le code de reponse.php :

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
	</head>
	<body>
		<?php
		echo '<p>Bonjour ' . $_POST['prenom'] . '</p>';
		?>
	</body>
</html>

Une autre version de ce code sans la génération de la balise <p> dans la commande echo :

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
	</head>
	<body>
		<p>
		<?php
		echo 'Bonjour ' . $_POST['prenom'];
		?>
		</p>
	</body>
</html>

Les débutants trouveront cette dernière version plus simple, car elle évite la concaténation de la balise <p>.