2016-04-06 6 views
-1

So habe ich eine PHP-Seite, die wie ein Gateway zum Eingang der tatsächlichen Website basierend auf einer Benutzerantwort auf Frage fungiert. bist du zum Beispiel über 18? Aber meine Abfrage lautet:Umleitung basierend auf der Vorlage für eine Gateway-Seite PHP

-wie kann ich eine Benutzerantwort auf die Frage speichern?

-wie kann vielleicht eine Cookie- oder Sitzungsvariable aufzeichnen, ob ein Benutzer die Gateway-Seite bestätigt oder sogar besucht hat?

-wie kann ich sicherstellen, dass, wenn die "actualpage.php" im Webbrowser des Benutzers zwischengespeichert wird, die Gateway-Seite nicht überspringt, wenn sie die Seite nicht bestätigt oder besucht haben?

+0

Erstellen Sie eine Sitzungsvariable, die standardmäßig auf 0 festgelegt ist. Setzen Sie die Variable auf 1, sobald sie die Frage beantwortet haben. make 'actualpage.php' weist jeden mit einer 0 für die Sitzungsvariable zurück oder wenn seine Sitzungsvariable nicht existiert. – gommb

+0

Ok toll klingt gut. Aber wo poste ich den Code? Ich bin meine Gateway-Seite oder meine aktuelle Seite oder beides? – Alex

+0

auf der Fragenseite überprüfen, ob die Sitzungsvariable vorhanden ist, wenn sie nicht gleich 0 ist. Wenn jemand die Frage beantwortet, setze diese Sitzungsvariable auf 1. Leite auf der tatsächlichen Seite jeden um, der die Sitzung nicht hat Variable auf 1 gesetzt. – gommb

Antwort

1

Sie müssen es nicht wirklich standardmäßig auf 0 setzen, also habe ich das unten nicht eingeschlossen.

question.php:

session_start(); 

// if they answered the question 
$_SESSION['time'] = 1; 

actualpage.php:

session_start(); 
if (!isset($_SESSION['time'])) { 
    header("Location: redirectpage.php"); 
    exit(); 
} 
// rest of the page code 

einfach ist das, wenn Sie Fragen haben, dann fragen Sie einfach.

+1

Funktioniert perfekt! Vielen Dank! – Alex

+0

@Alex Kein Problem – gommb

+1

@Alex Eine Sache, die ich vergessen habe, ist es, die 'exit()' Funktion nach Umleitungen zu verwenden, ansonsten läuft der PHP-Code immer noch auf der Seite. Ich habe meine Antwort aktualisiert und einen Blick darauf geworfen. – gommb

Verwandte Themen