php redirect-Seite mit der Meldung
ich soll die Umleitung zu einer Seite und dann eine Meldung angezeigt:
was ich habe ist:
if (mysqli_affected_rows($link) == 1)
{
//succes
$message = 'succes';
redirect_to('index.php');
}
auf der index-Seite habe ich:
if (!empty($message)) {
echo '<p class="message"> '.$message.'</p>';
}
Die umleiten-Funktion ist in Ordnung:
function redirect_to( $location = NULL ) {
if ($location != NULL) {
header("Location: {$location}");
exit;
}
}
Aber es zeigt auch nicht meine Botschaft. Seine leere.
InformationsquelleAutor user1386906 | 2012-08-16
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Durch die Zeit der Umleitung passiert und das PHP-Skript dargestellt
$location
ausgeführt wird, wird$message
variable gewesen wäre, ist lange vorbei.Angriff zu nehmen, müssen Sie geben Sie Ihre Nachricht in Ihrem location-header, mit
GET
variable:header("Location: $location?message=success");
Und
Du könntest auch noch einen Blick in Sitzungen
dann im Ziel-Skript:
Variablen aufhören zu existieren, nachdem das Skript beendet. Jede einzelne Anfrage, jede einzelne PHP-Skript-Aufruf ist ein völlig neuen Kontext mit keine Daten aus einem anderen Aufruf.
Verwenden Sitzungen für die Persistenz der Daten.
können Sie verwenden, Sitzungen
sowie auf index
Seit Sie laufen
header("Location: {$location}");
den Wert$location
(das in der ersten Datei) gehen verloren, wenn index.php ist geladen.verwenden Sie den folgenden code....
in index.php
können Sie vermeiden den Umleitung-Funktion und Verwendung dieser code in die Seite
index.php