GET-Parameter PHP [Duplikat]
Ich habe eine HTML / PHP-Website (HTML-Code in meiner .php)
Ich verwende die Methode $ _GET ["name"], damit ich den Namen meines Gastes in den von mir gesendeten Link schreiben kann (zum Beispiel: mywebsite.com/index.php?name=Mike). Hier ist der Code, den ich benutze:
<p class="guest_info">
<?php echo " " . $_GET["name"]; ?>
<img alt="account_avatar" src="./index_files/avatar.svg">
</p>
Nun möchte ich, dass dieser Name auf den verschiedenen Seiten implementiert wird. Mein aktuelles Problem ist, dass der ["Name"] nicht gespeichert wird, wenn ich den Link gebe und nach dem Klicken auf eine andere Seite meiner Website. Ich möchte den Namen, der in der ersten angegebenen URL verwendet wird, während der Navigation speichern. Wenn ich den Namen im Link ändere, werden auch die Seiten automatisch geändert.
Danke fürs Helfen
Antworten
Sie sollten eine PHP-Sitzung oder ein Browser-Cookie verwenden .
Stellen Sie unter Verwendung der Sitzungsroute am Anfang Ihrer Seite sicher, dass Sie hinzufügen session_start().
Anschließend können Sie den Wert als Sitzungswert speichern.
if(array_key_exists('name', $_GET) && !array_key_exists('name', $_SESSION)) {
$_SESSION['name'] = $_GET['name'];
}
Jetzt können Sie überall nach diesem Code $_SESSION['name']auf den Wert zugreifen, solange die Sitzung bestehen bleibt.
Um $_GET['name']von Seite zu Seite zu bleiben, müssen Sie es weiterhin in der URL-Abfragezeichenfolge übergeben. Zum Beispiel so etwas:<a href="index.php?name=<?php echo $_GET['name']; ?>">Link</a>