Fritz: Cookie löschen aus Cookie-Array

Hallo!

Ich habe ein Problem damit Cookies zu löschen, ich hoffe es kann mir hier jemand helfen.

Und zwar erstelle ich das Cookie als Array z.b.:

  
define('ARRAY_NAME', 'test');  
$cookieKey = 'foo';  
$cookieName = (ARRAY_NAME !== FALSE) ? ARRAY_NAME.'['.$cookieKey.']' : $cookieKey ;  
setcookie($cookieName, 'bar', 0);  
  
echo $_COOKIE['test']['foo'];  // bar

Jetzt ist mein Problem, dass ich das Cookie nicht mehr löschen kann weil ich nicht weiß wie ich es wieder ansprechen soll. Die Zeitangaben in der Zukunft dienen nur zum Testen ob das alte Cookie geändert werden kann.

setcookie('test[foo]', 'bla', time()+300);  
  
print_r($_COOKIE); // Array([test] => Array([id] => bar))

Wenn ich in meinen Browser schaue gibt es aber 2 Cookies:

test[foo] = bar // Verfall bei Session-Ende
test[foo] = bla // Verfall in 5min

Wie kann ich die Verfallszeit bzw den Inhalt von dem Cookie mit 'bar' ändern? Wieso speichert mein Browser - FF 3.6.13 - 2 Cookies?

Grüße, Fritz

  1. print_r($_COOKIE); // Array([test] => Array([foo] => bar))[/code]

    Korrigiert.

    Grüße, Fritz

  2. Hi,

    Wieso speichert mein Browser - FF 3.6.13 - 2 Cookies?

    Kann ich dir mit den vorliegenden Infos auch nicht erklären.

    Wie sehen die Details dieser beiden Cookies aus, wenn du sie dir in den Seiten-Informationen anzeigen lässt? Insb., was den Path angeht.

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
    1. Wie sehen die Details dieser beiden Cookies aus, wenn du sie dir in den Seiten-Informationen anzeigen lässt? Insb., was den Path angeht.

      Daran wird es wohl gelegen haben. Für das erste Cookie speichere ich als Pfad "/", wenn ich versuche es das zweite mal anzusprechen, geb ich aber gar keinen Pfad an.
      Das hab ich oben im Beispielcode leider ausgelassen.
      Wenn ich das erste Cookie mit einem leeren String als Pfad speichere funktioniert alles.

      Danke für den Hinweis!