Hallo!
Ich will gerade auf meiner Seite einen passwortgeschützten Bereich (mittels Sessions) machen, kein Benutzername - nur Passwort. Allerdings plagen mich noch ein paar Verständnisprobleme.
Ich erkläre kurz meinen Stand:
Ich gebe auf der 1. Seite das Passwort ($eingabe) ein. Auf der 2. Seite vergleiche ich die Eingabe ($eingabe) mit dem Passwort ($pwd). Falls es übereinstimmt erzeuge ich eine Session mit:
session_start ();
$_SESSION["sess_id"] = $eingabe; /* könnte auch statt $eingabe $pwd nehmen */
auf den passwortgeschützten Seiten überprüfe ich dann die Session mit:
session_start ();
if(!isset ($_SESSION["sess_id"])) {
... //Umleitung auf login Seite
}
... //normal weiter auf der Seite
Jetzt habe ich ein paar Fragen:
1. Wo wird diese Session ID gespeichert? auf dem Server oder auf dem client?
2. In meinem Fall überprüfe ich nur ob die Sessionvariable vorhanden ist [if(!isset ($_SESSION["sess_id"]))]. Wenn jetzt aber jemand die Seite betritt der das Passwort kennt und auch eingibt, kann dann ein anderer, der gleichzeitig die Seite besucht aber das Passwort nicht kennt, die passwortgeschützten Seiten anschauen, weil ja eine Session Variable vorhanden ist (zwar vom anderen Benutzer, aber halt vorhanden)? Oder werden zu dem Namen ($eingabe) noch andere Daten in der Session ID gespeichert (IP Adresse oder Zufallszahl o.ä.)?
Wäre für Antworten und allgemeine Tipps dankbar
Ich will gerade auf meiner Seite einen passwortgeschützten Bereich (mittels Sessions) machen, kein Benutzername - nur Passwort. Allerdings plagen mich noch ein paar Verständnisprobleme.
Ich erkläre kurz meinen Stand:
Ich gebe auf der 1. Seite das Passwort ($eingabe) ein. Auf der 2. Seite vergleiche ich die Eingabe ($eingabe) mit dem Passwort ($pwd). Falls es übereinstimmt erzeuge ich eine Session mit:
session_start ();
$_SESSION["sess_id"] = $eingabe; /* könnte auch statt $eingabe $pwd nehmen */
auf den passwortgeschützten Seiten überprüfe ich dann die Session mit:
session_start ();
if(!isset ($_SESSION["sess_id"])) {
... //Umleitung auf login Seite
}
... //normal weiter auf der Seite
Jetzt habe ich ein paar Fragen:
1. Wo wird diese Session ID gespeichert? auf dem Server oder auf dem client?
2. In meinem Fall überprüfe ich nur ob die Sessionvariable vorhanden ist [if(!isset ($_SESSION["sess_id"]))]. Wenn jetzt aber jemand die Seite betritt der das Passwort kennt und auch eingibt, kann dann ein anderer, der gleichzeitig die Seite besucht aber das Passwort nicht kennt, die passwortgeschützten Seiten anschauen, weil ja eine Session Variable vorhanden ist (zwar vom anderen Benutzer, aber halt vorhanden)? Oder werden zu dem Namen ($eingabe) noch andere Daten in der Session ID gespeichert (IP Adresse oder Zufallszahl o.ä.)?
Wäre für Antworten und allgemeine Tipps dankbar