Skip to content

Passage de variables entre pages via l'URL (GET)

  • Comprendre et implémenter le passage de variables entre différentes pages d’un site web en utilisant la méthode GET et la superglobale $_GET.

Dans un site web multi-pages, il est courant de devoir passer des informations d’une page à une autre.

En PHP, une des méthodes les plus simples pour réaliser ce transfert est d’utiliser la méthode GET, où les données sont passées dans l’URL de la requête.

Ces données peuvent être récupérées à l’aide de la superglobale $_GET, un tableau associatif qui contient les données envoyées.

Supposons que vous souhaitez passer le nom de l’utilisateur de la page d’accueil à une page de profil ou à une page de détails.

Vous pouvez ajouter le nom dans un lien sous la forme suivante : <a href="profile.php?name=JohnDoe">Voir Profil</a>=.

Sur la page profile.php, vous pouvez accéder à cette variable en utilisant $_GET['name'].

Ajout de fonctionnalités de passage de données

Section titled “Ajout de fonctionnalités de passage de données”
  • Modifiez index.php pour inclure un lien qui passe une variable à about.php.

Modification de about.php pour recevoir des données

Section titled “Modification de about.php pour recevoir des données”
  • Ajoutez du code pour afficher une information passée depuis index.php.
  • Assurez-vous que le passage de l’information fonctionne correctement en cliquant sur le lien et en vérifiant l’affichage sur about.php.
Voir la correction

Modification pour ajouter un lien passant une variable

Section titled “Modification pour ajouter un lien passant une variable”
index.php
<?php include 'header.php'; ?>
<h1>Bienvenue sur mon site personnel</h1>
<p>Ceci est la page d'accueil.</p>
<a href="about.php?name=Visiteur">En savoir plus sur nous</a>
<?php include 'footer.php'; ?>

Modification pour recevoir et afficher la variable

Section titled “Modification pour recevoir et afficher la variable”
about.php
<?php include 'header.php'; ?>
<h1>À propos de nous</h1>
<?php
if (isset($_GET['name'])) {
echo "<p>Bienvenue, " . htmlspecialchars($_GET['name']) . "! Voici plus d'informations sur notre site.</p>";
} else {
echo "<p>Voici plus d'informations sur notre site.</p>";
}
?>
<?php include 'footer.php'; ?>

https://github.com/nn-teach/PHP-intro/tree/v2

  • Sécurité : Il est important de toujours nettoyer les données reçues pour éviter les failles de sécurité comme les attaques XSS. C’est pourquoi htmlspecialchars() est utilisé pour échapper les caractères spéciaux.
  • Vérification de l’existence des données : L’utilisation de isset() garantit que le code tente de lire $_GET['name'] seulement si la variable est présente dans l’URL. Cela évite les erreurs dues à la tentative d’accès à une variable non définie.