hallo,
habe ein problem mit sessions und cookies.
ich verwende sessions und cookies für eine login-seite.
wenn man username und passwort erfolgreich eingibt wird wird eine session gesetzt:
...
$_SESSION['uid'] = $result['uid'];
$_SESSION['username'] = htmlspecialchars($result['username']);
...
zusätzlich zur session wird auch ein Cookie (zwei wochen gültig) gesetzt damit der user beim nochmaligen besuch der seite automatisch eingeloggt ist:
...
$cookie = serialize(array($_SESSION['username'],$token));
setcookie('remember',$cookie, time()+12099600);
...
Das Cookie wird auf der Login-Seite erfolgreich gesetzt:
login.php
...
var_dump($_COOKIE['remember']);
...
// Ausgabe: string(71) "a:2i:0;s:6:\"tester\";i:1;s:32:\"d765d776e81aeb24396a9b3862d23f86\";}"
// auch die Session-Variablen sind richtig befüllt
nach dem Login (login.php) erfolgt eine automatische weiterleitung auf eine willkommens-seite:
login.php
...
print '<META HTTP-EQUIV="refresh" CONTENT="0; URL=willkommen.php">';
...
UND JETZT das PROBLEM:
wieso ist auf einmal mein Cookie verschwunden?
willkommen.php
...
var_dump($_COOKIE['remember']);
// Ausgabe: NULL !!!!
session_start();
var_dump($_SESSION);
// ist richtig BEFÜLLT!!!
...
Was mache ich den hier falsch ? Wieso ist das Cookie nicht gesetzt oder leer ?
Bitte um eure Mithilfe!
Danke
hannes
habe ein problem mit sessions und cookies.
ich verwende sessions und cookies für eine login-seite.
wenn man username und passwort erfolgreich eingibt wird wird eine session gesetzt:
...
$_SESSION['uid'] = $result['uid'];
$_SESSION['username'] = htmlspecialchars($result['username']);
...
zusätzlich zur session wird auch ein Cookie (zwei wochen gültig) gesetzt damit der user beim nochmaligen besuch der seite automatisch eingeloggt ist:
...
$cookie = serialize(array($_SESSION['username'],$token));
setcookie('remember',$cookie, time()+12099600);
...
Das Cookie wird auf der Login-Seite erfolgreich gesetzt:
login.php
...
var_dump($_COOKIE['remember']);
...
// Ausgabe: string(71) "a:2i:0;s:6:\"tester\";i:1;s:32:\"d765d776e81aeb24396a9b3862d23f86\";}"
// auch die Session-Variablen sind richtig befüllt
nach dem Login (login.php) erfolgt eine automatische weiterleitung auf eine willkommens-seite:
login.php
...
print '<META HTTP-EQUIV="refresh" CONTENT="0; URL=willkommen.php">';
...
UND JETZT das PROBLEM:
wieso ist auf einmal mein Cookie verschwunden?
willkommen.php
...
var_dump($_COOKIE['remember']);
// Ausgabe: NULL !!!!
session_start();
var_dump($_SESSION);
// ist richtig BEFÜLLT!!!
...
Was mache ich den hier falsch ? Wieso ist das Cookie nicht gesetzt oder leer ?
Bitte um eure Mithilfe!
Danke
hannes
Kommentar