sessions werden sie gelöscht wenn man seite schliest?
-
hallo.
ich bin dabei eine website zu machen.
jeder der sich anmeldet bekommt nen "mitgliedslink"
dann wird sowas auf jeder seite ausegeben:Name: Mustermann Max Mitglieds-ID: 8
wenn ich die seite zu mache und dann noch mal hin gehe ABER ohne diese id mit in der url anzugeben wird der name und die id angezeigt.
wie kan man das verhindern oder liegt es am browser?
beim ie ist es aber auch so.
mfg
-
Wie speicherst du denn die Session-ID?
-
so hier:
if(isset($_GET['id'])) { //mysql-query SELECT vname, nname, WHERE id = '".$_GET['id']."'"; $_SESSION['vorname'] = $row['vname']; $_SESSION['name'] = $row['nname']; $_SESSION['id'] = $_GET['id']; } else {}
dann auf jeder seite:
if(isset($_SESSION['id'])) { echo $_SESSION... } else {}
-
Wenn du die Session-ID nur per URL übergibst (kein Cookie) kann es eigentlich nicht sein, dass du nach schließen des Browsers wieder in deiner alten Session bist - auf dem Server existiert sie zwar noch solange, bis du session_destroy aufrufst oder sonst wie die Datei / den Datensatz löscht, aber das sollte keinen Einfluß darauf haben
-
Hi,
das liegt wahrscheinlich daran, dass deine Session nicht beendet wurde und somit die Sessionvariable "$_SESSION['id']" noch gesetzt ist...
Wenn du den Browser zumachst und ihn wieder neu startest und dann die Seite aufrufst, dürfte er den Namen nicht mehr anzeigen.
mfg
Arskane
-
Gerade wenn man die SessionID per URL übergibt kann man in die alte Session reinkommen.
PHP überprüft ob eine entsprechende sess_datei da ist und schon hat man die Daten.
Diese Datei wird erst nach einer php.ini Zeit gelöscht.Wenn man Cookies verwendet welche nur für das aktuelle Brwoserfenster gelten dann sollte man (wenn man die Sessid nicht kennt und somit auch nicht in die URL eingegen kann) nicht mehr an die Daten der Session ran kommen.
-
Hi,
ich schätze mal bei marcus.t ist $_GET['id'] nicht die SID, sondern eine andere UserID, die zur Intialisierung der Session verwendet wird....MfG
Alexander Sulfrian
-
diese 'id' ist nicht die session_id sondern die user id.
mal angenommen hans meldet sich auf meiner seite an und hat die id 68.
er bekommt einen link mit dem er leute werben kann.
www.#####.de/index.php?id=68
peter meldet sich nun unter diesem link an und hans erhält z.B 1€
wenn man nun auf die seite geht. und die id noch mit dranhängt dann wird der vorname nachname aus der db gelesen und gut sichtbar auf jede seite hingeschrieben. wenn er sich anmeldet wird die id (aus der url) mit in die db geschrieben.
und wenn ich die seite zu mache und nochmal hingehe ohne die id anzugeben wird es trotzdem angezeigt. ich habe jetzt aber eine andere lösung gefunden.
cu