Problem mit HTTP_REFERER

proloser

Erfahrenes Mitglied
Hallo,

ich habe folgendes Problem:

Ein User A klickt bei einer Community auf den User B und will ihm eine Nachricht hinterlassen, um dies zu tun muss er sich aber zuerst einloggen, somit wird er auf die "login.php" geleitet.

Nun möchte ich damit der User A sobald er sich eingeloggt hat wieder zurück zu User B kommt!

Versucht hab ich es bereits mit "$_SERVER[HTTP_REFERER]" allerdings ist das nicht wirklich 100 Prozentig.

Wie würdet Ihr das am besten machen?

MfG proloser
 
Ein guter Ansatz wäre tatsächlich zu prüfen, ob der User eingeloggt ist, wenn nicht, speicherst du die REQUEST_URL in einer Session-Variable. Nach dem einloggen prüfst du ob diese Session-Variable gesetzt ist, wenn ja redirectest du mit header().
 
Das Problem ist ja damit die REQUEST URL Browser und Firewall abhängig ist und somit würde das nicht bei jedem User funktionieren oder bin ich da falsch informiert?
 
Stimmt hab ich jetzt verwechselt!

Gibts eine Möglichkeit damit ich den Teil ...

Code:
$_SESSION["REQUEST_URI"] = $_SERVER["REQUEST_URI"];

... in de Header meiner Webseite schreibe und damit immer die Letzte und nicht die Aktuelle Seite in die Session gespeichert wird?

MfG
 
Du darfst den in der Sitzung gespeicherten Wert natürlich nur dann überschreiben, wenn du ihn für die aktuelle Laufzeit des Skriptes nicht mehr brauchst. Denn dann enthält diese Variable immer den zuletzt aufgerufenen URL und nicht den aktuellen.
 
Das ist klar aber dann muss ich ja theoretisch die URLs zB in einer Datenbank abspeichern und den letzten abfragen .. müsste doch einfacher auch funktionieren oder :confused:
 
PHP:
session_start();
if( isset($_SESSION['LAST_REQUESTED_URI']) ) {
	echo 'Sie waren zuletzt auf „'.htmlspecialchars($_SESSION['LAST_REQUESTED_URI']).'“.';
}
$_SESSION['LAST_REQUESTED_URI'] = $_SERVER['REQUEST_URI'];
 
Zurück