Site icon La programmation sur le web

PHP, la transmission de données

Afin de données un peu de vie à ses pages internet, la transmission de données peut se faire soit avec la méthode GET ou POST

L’un des intérêts du PHP est de pouvoir rendre des pages web dynamique qui pourront être modifiées en fonction de l’utilisateur. La transmission de données ne se fait pas réellement en PHP, celle-ci se fait en HTML (principalement), en revanche, le traitement se fait en php (sur un serveur dont le langage est le PHP).

La transmission de données se fait en utilisant deux méthodes : GET et POST, que nous allons voir dans cet page.

L’ensemble des fichiers sont disponibles sur ce dépôt. Ils sont tous à mettre dans le même dossier (attention à l’emplacement sur un serveur.

La méthode GET

La méthode GET permet de transmettre des informations en utilisant la barre d’adresse comme ceci : https://www.google.fr/search?rlz=1C1GFR343&q=programmationsurleweb. Ce sont des données directement visible.

Lorsque l’on fait de l‘URL Rewriting, l’adresse est plus lisible : https://programmation.surleweb-france.fr/avec-quoi-creer-son-site/, mais le traitement derrière (pour simplifier) est équivalent à la méthode GET.

Voyons le contenu du fichier envoi-get.php :

<html lang="fr">
	<head>
		<meta charset="UTF-8">
		<title>Envoi par la méthode GET</title>
	</head>
	<body>
		<a href="reception-get.php?nom=Nicolas&age=36">Envoi</a>
	</body>
</html>

Les informations à envoyer sont présentes sous cette forme dans l’attribut href du lien :

A présent, le fichier php qui va réceptionner les données, c’est-à-dire reception-get.php :

<html lang="fr">
	<head>
		<meta charset="UTF-8">
		<title>Réception par la méthode GET</title>
	</head>
	<body>
		<p>Bienvenu <strong><?= $_GET['nom'] ?></strong>, tu as <strong><?= $_GET['age']?></strong>, ce n'est pas un peu vieux</p>
	</body>
</html>

La récupération se fait avec la constante $_GET qui est un tableau, les éléments de ce tableau sont identifiés par le nom des variables qui ont été transmis dans l’adresse.

Dans mon exemple, j’ai simplement intégrer le code PHP dans mon code HTML.

La méthode POST

La transmission de données par la méthode POST se fait directement dans le script sans passer par l’URL, il s’agit de la méthode la plus couramment utilisée, notamment pour les formulaires.

Comme pour la méthode GET, voyons un petit exemple, en premier lieu, le fichier envoi-post.php :

<html lang="fr">
	<head>
		<meta charset="UTF-8">
		<title>Envoi par la méthode POST</title>
	</head>
	<body>
		<form method="post" action="reception-post.php">
			<input type="text" name="nom" value="Nicolas">
			<input type="number" step=1 name="age" value=36>
			<input type="submit" name="envoyer" value="Envoyer">
		</form>
	</body>
</html>

Le but de cet article n’est pas de rentrer dans les détails des formulaires, ceux qui nous intéresse ici sont :

maintenant, voyons le fichier reception-post.php :

<html lang="fr">
	<head>
		<meta charset="UTF-8">
		<title>Réception par la méthode POST</title>
	</head>
	<body>
		<p>Bienvenu <strong><?= $_POST['nom'] ?></strong>, tu as <strong><?= $_POST['age']?></strong>, tout compte fait, ce n'est pas un peu vieux</p>
	</body>
</html>

De la même manière que nous récupérons les données avec la constantes $_GET, avec la méthode POST, celles-ci sont récupérées avec la constante $_POST sous forme de tableau.

Conclusion

Tu es maintenant prêt à réaliser ton premier formulaire d’inscription, bien entendu, tu devras y mettre un peu de sécurité.

Quitter la version mobile