Hey ihr Lieben,
ich versuche mich gerade an einem User-Bereich der mit Sessions funktionieren soll.
Der User meldet sich an, User wird aus DB verglichen, die Anmeldung und alles funktioniert soweit. Wenn sich der User anmeldet, wird eine Session gestartet:
Das steht in einer "header.php", die auf jeder Seite automatisch eingebunden wird (mit Stylesheets, etc.), ausser eben auf der login-Seite (login.php ist so zu sagen das ausführende Script vom Anmeldeformular).
Die Session wird dann in einer Spalte in der DB "PHPSESSID" hinter den jeweiligen User eingetragen:
Mein Problem ist jetzt folgendes:
Ich will, dass der Benutzer, der sich eingeloggt hat und eine Session-Id erhalten hat auf jeder Seite erstmal automatisch überprüft wird, ob er die Seite sehen darf - bzw ob die Session-Id, mit der er surft, auch der der in der DB steht über ein stimmt.
Anders rum: Hat der User nicht die SESSION-Id aus der DB, darf er die Seiten nicht sehen, auf die er will.
Ich muss, um das Problem zu verstehen und selber zu lösen erstmal verstehen die eine Session funktioniert.
Kann ich in eine Session rein schreiben User-XY hat ID XY und das wird auf jeder Seite weiter gegeben (möchte auch auf den Seiten den Username per Variable einbinden können, dass z.B. dran steht "Hallo $user - willkommen!").
Wie muss ich das anstellen, dass auf jeder Seite gefragt wird "hat er diese ID, wenn ja, weiter, wenn nein Weiterleitung auf login-Seite".
Vielen Dank im Voraus,
ich hoffe ihr versteht mein Problem,
Grüße
psdler
ich versuche mich gerade an einem User-Bereich der mit Sessions funktionieren soll.
Der User meldet sich an, User wird aus DB verglichen, die Anmeldung und alles funktioniert soweit. Wenn sich der User anmeldet, wird eine Session gestartet:
PHP:
// Session starten
if ($url != "login")
{
session_start();
session_name();
$PHPSESSID = session_id();
}
Das steht in einer "header.php", die auf jeder Seite automatisch eingebunden wird (mit Stylesheets, etc.), ausser eben auf der login-Seite (login.php ist so zu sagen das ausführende Script vom Anmeldeformular).
Die Session wird dann in einer Spalte in der DB "PHPSESSID" hinter den jeweiligen User eingetragen:
Code:
$sql = "UPDATE user
SET PHPSESSID = '" . $PHPSESSID . "'
WHERE username = '" . $username . "'
";
Mein Problem ist jetzt folgendes:
Ich will, dass der Benutzer, der sich eingeloggt hat und eine Session-Id erhalten hat auf jeder Seite erstmal automatisch überprüft wird, ob er die Seite sehen darf - bzw ob die Session-Id, mit der er surft, auch der der in der DB steht über ein stimmt.
Anders rum: Hat der User nicht die SESSION-Id aus der DB, darf er die Seiten nicht sehen, auf die er will.
Ich muss, um das Problem zu verstehen und selber zu lösen erstmal verstehen die eine Session funktioniert.
Kann ich in eine Session rein schreiben User-XY hat ID XY und das wird auf jeder Seite weiter gegeben (möchte auch auf den Seiten den Username per Variable einbinden können, dass z.B. dran steht "Hallo $user - willkommen!").
Wie muss ich das anstellen, dass auf jeder Seite gefragt wird "hat er diese ID, wenn ja, weiter, wenn nein Weiterleitung auf login-Seite".
Vielen Dank im Voraus,
ich hoffe ihr versteht mein Problem,
Grüße
psdler