Jan M.: wie kann ich das cookie lesen

Hi!

Danke erstmal, das schreiben klappt jetzt.

Aber da habe ich auch schon ein neues problem, wie bekomme ich die infos wieder raus?

Wie kann ich fesstellen ob der Browser Cookies anhat oder auch nicht? Ginge auch mit Javascript.

Danke

Jan M.

  1. Aber da habe ich auch schon ein neues problem, wie bekomme ich die infos wieder raus?

    mit Perl geht das so:

    ($cookiekey, $cookieval) = split (/=/,$ENV{'HTTP_COOKIE'});

    1. Hi,

      Aber da habe ich auch schon ein neues problem, wie bekomme ich die infos wieder raus?

      mit Perl geht das so:

      ($cookiekey, $cookieval) = split (/=/,$ENV{'HTTP_COOKIE'});

      falls mehrere Cookies gesetzt sein können (ist die Regel), sollte man vorher folgendermaßen splitten:

      my @cookies = split(/; /,$ENV{'HTTP_COOKIE'});

      und dann eben mit den einzelnen Elementen von @cookies weitermachen. Im Modul CGI.pm gibt es übrigens einige Cookie-Funktionen, die einem das Leben leichter machen - siehe die Perl-Doku!

      Cheatah

      1. Hi,

        Aber da habe ich auch schon ein neues problem, wie bekomme ich die infos wieder raus?

        mit Perl geht das so:

        ($cookiekey, $cookieval) = split (/=/,$ENV{'HTTP_COOKIE'});

        falls mehrere Cookies gesetzt sein können (ist die Regel), sollte man vorher folgendermaßen splitten:

        my @cookies = split(/; /,$ENV{'HTTP_COOKIE'});

        und dann eben mit den einzelnen Elementen von @cookies weitermachen. Im Modul CGI.pm gibt es übrigens einige Cookie-Funktionen, die einem das Leben leichter machen - siehe die Perl-Doku!

        Cheatah

        Danke, aber die habe ich nicht verstanden.
        Aber wie kann ich wissen ob der user cookies an hat oder nicht?

        1. Hi,

          Danke, aber die habe ich nicht verstanden.

          dann versuch ich's noch mal anders:
          Das Script setzt keinen Cookie, es schickt nur die Information an den Browser, daß ein Cookie gesetzt werden soll. Deswegen weiß das Script in dem Moment, in dem der "Set-Cookie"-Befehl aufgerufen wurde auch noch nicht, ob dies erfolgreich war. Erst wenn der Browser das Script (oder ein anderes auf dem Server) erneut anfordert, wird der gesetzte Cookie mitgeschickt - oder eben nicht, wenn er abgelehnt wurde.

          Den Cookie in der selben Scriptinstanz (also sofort) abzufragen ist, als würde man ein Buch schreiben und den Leser noch vor der Auslieferung fragen, ob es ihm gefallen hat. (Der Vergleich ist übrigens ziemlich realitätsnah; denn Du kennst vorher den Leser nicht, und das Script kennt den Client nicht, der den Cookie setzen soll.)

          Aber wie kann ich wissen ob der user cookies an hat oder nicht?

          Das kann nur bei der nächsten Scriptanforderung (dieses oder ein anderes) geschehen, und Du prüfst auch nicht, ob der User Cookies an hat, sondern ob er diesen einen speziellen akzeptiert hat. Über die generelle Einstellung sagt das nichts aus.

          Cheatah