Zurück zur vorherigen Seite in PHP
Dieser Artikel stellt einige Methoden vor, um in PHP zur vorherigen Seite zurückzukehren.
Verwenden Sie den Request-Header HTTP_REFERER
, um in PHP zur vorherigen Seite zurückzukehren
Der Request-Header HTTP_REFERER
gibt die URL der Seite zurück, von der die aktuelle Seite in PHP angefordert wurde. Der Header ermöglicht es dem Server, den Ort zu erkennen, von dem aus die Benutzer die aktuelle Seite besuchen. Der Header wird als Index des Arrays $_SERVER
verwendet. Wir können die Funktion header()
mit dem Header location
verwenden, um die aktuelle Seite auf die vorherige Seite umzuleiten. Wir sollten den Standort
auf $SERVER['HTTP_REFERER']
setzen, um zur vorherigen Seite zurückzukehren.
Sehen wir uns an, wie der Header HTTP_REFERER
funktioniert. Erstellen Sie beispielsweise eine Schaltfläche in HTML. Setzen Sie das Attribut action
auf home.php
und das Attribut method
auf post
. Speichern Sie die Datei als index.php
. Prüfen Sie in der Datei home.php
, ob das Formular mit der Funktion isset()
abgeschickt wird. Verwenden Sie dann die Funktion echo
, um den Header $_SERVER[HTTP_REFERER]
anzuzeigen.
Beispielcode:
<form action ="home.php" method = "POST">
<button type="submit" name="button"> Submit</button>
</form>
if(isset($_POST['button'])){
echo $_SERVER[HTTP_REFERER];
}
Ausgabe:
http://localhost/index.php
Hier haben wir das Formular in der Datei index.php
erstellt. Dann wird das Formular an die Datei home.php
übermittelt. Dies bedeutet, dass die Seite home.php
von der Seite index.php
angefordert wurde. Daher ist die Seite index.php
der Referrer. Der obige Ausgabeabschnitt zeigt, dass der HTTP_REFERER
die URL http://localhost/index.php
, den Referrer, zurückgibt.
Unser Ziel ist es, die aktuelle Seite home.php
auf die vorherige Seite index.php
umzuleiten.
Erstellen Sie beispielsweise in der Datei home.php
eine Variable $message
, um die Nachricht zu speichern, die nach der Umleitung angezeigt werden soll. Verwenden Sie den urlencode()
, um die Nachricht in seinen Parameter zu schreiben. Als nächstes schreiben Sie die Funktion header()
, um den Ort der Umleitung festzulegen. Verketten Sie $_SERVER[HTTP_REFERER]
und "?message=".$message
und setzen Sie in der Funktion header()
den Wert für location
. Rufen Sie als nächstes die Funktion die
auf. Drucken Sie in der Datei index.php
die Variable $_GET['message']
direkt unter dem Formular mit der Funktion echo
aus.
Hier haben wir die Funktion urlencode()
verwendet, um die Nachricht zu schreiben, da die Nachricht ein String ist, der in der URL abgefragt wird. Der message
-Index im $_GET
-Array ist die Variable, die wir in der URL verwendet haben, die auf die vorherige Seite in der header()
-Funktion verweist.
Wenn wir auf die Schaltfläche auf der Seite index.php
klicken, wird das Formular an home.php
gesendet und auf die Seite index.php
, die vorherige Seite, zurückgeleitet.
Auf diese Weise können wir die Funktion header()
und den Header HTTP_REFERER
verwenden, um die aktuelle Seite auf die vorherige Seite in PHP zurückzugeben.
Beispielcode:
//index.php
<form action ="home.php" method = "POST">
<button type="submit" name="button"> Submit</button>
</form>
<?php
if(isset($_GET['message'])){
echo $_GET['message'];
}
?>
//home.php
if(isset($_POST['button'])){
$message = urlencode("After clicking the button, the form will submit to home.php. When, the page home.php loads, the previous page index.php is redirected. ");
header("Location:".$_SERVER[HTTP_REFERER]."?message=".$message);
die;
}
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn