Klaus: $_COOKIE enthält nur PHPSESSID?

Hallo,

bei der Authentifizierung eines Benutzers auf einer internen Seite wird neben session_start() und dem Setzen einzelner Session-Variablen (z.B. $_SESSION[benutzername] = $loginname;), auch ein Cookie z.B. mittels setcookie("cookiewar",$loginname,time()+(3600*24*100)); gesetzt.

Mit einer einzigen Ausnahme gibt mir var_dump($_COOKIE) folgende aus:
array(2) { ["cookievar"]=> string(37) "klaus" ["PHPSESSID"]=> string(26) "btmep2lk2l8thua18ibdbsa8b3" }
Bei der einzigen Ausnahme wird
array(1) { ["PHPSESSID"]=> string(26) "btmep2lk2l8thua18ibdbsa8b3" }
ausgegeben.
Das Problem ist beliebig reproduzierbar. Die eine Seite zeigt cookievar nicht an, alle anderen immer.
Ebenso verhält es sich zwangsläufig bei $REQUEST.

Kann mir jemand eine Idee geben, woran das liegen kann?

Klaus

  1. Hallo,

    setcookie("cookiewar",$loginname,time()+(3600*24*100)); gesetzt.

    Ich habe das Problem doch selber lösen können, nachdem ich die Ursache gefunden hatte.
    Die eine Seite, die nicht richtig funktionierte, lag in einem anderen Verzeichnis.
    Da ich beim setcookie() keinen Pfad angegeben hatte, war das Cookie nur für den Pfad gültig, in dem das Cookie geschrieben wurde.

    Durch
    setcookie("cookiewar",$loginname,time()+(3600*24*100),"/");
    hat sich das Problem direkt lösen können.

    Klaus