GET, paramètre PHP [duplicate]
J'ai un site Web HTML / PHP (code HTML dans mon .php)
J'utilise la méthode $ _GET ["name"] pour pouvoir écrire le nom de mon invité dans le lien que j'envoie (par exemple: mywebsite.com/index.php?name=Mike). Voici le code que j'utilise:
<p class="guest_info">
<?php echo " " . $_GET["name"]; ?>
<img alt="account_avatar" src="./index_files/avatar.svg">
</p>
Maintenant, j'aimerais que ce nom soit implémenté sur les différentes pages. Mon problème actuel est que si je donne le lien et après avoir cliqué sur une autre page de mon site Web, le ["nom"] n'est pas enregistré. Je voudrais enregistrer le nom utilisé dans la première URL donnée lors de la navigation, et si je change le nom dans le lien, cela change automatiquement les pages également.
Merci pour ton aide
Réponses
Vous devez utiliser une session PHP ou un cookie de navigateur .
En utilisant l'itinéraire de session, au début de votre page, assurez-vous d'ajouter session_start().
Ensuite, vous pouvez stocker la valeur en tant que valeur de session.
if(array_key_exists('name', $_GET) && !array_key_exists('name', $_SESSION)) {
$_SESSION['name'] = $_GET['name'];
}
Maintenant, n'importe où après ce code, vous pouvez utiliser $_SESSION['name']pour accéder à la valeur tant que la session persiste.
Pour $_GET['name']persister d'une page à l'autre, vous devez continuer à le transmettre dans la chaîne de requête d'URL. Par exemple, quelque chose comme ceci:<a href="index.php?name=<?php echo $_GET['name']; ?>">Link</a>