Taz Geschrieben 13. August 2002 Geschrieben 13. August 2002 Hallo, ich versuche mit cgi (perl) cookies zu erzeugen und diese abzufragen. Ich schaff es leider nicht alleine. Hat jemand schon erfahrung damit gemacht ??? Villeicht kann mir einer Beispile liefern, wie ich ein Cookie setzte und abfragen kann. Ich benutze: use HTTP::Cookies; und komme einfach nciht weiter. Bitte hilft mir mit Beispilen. Danke. Zitieren
herch Geschrieben 13. August 2002 Geschrieben 13. August 2002 Cookies herstellen Seite 3 von 6 Schreiben wir zunächst einmal ein Programm, das einen Cookie erstellt und es an den Browser sendet. Dieses Programm besteht aus zwei Teilen: einem Formular für den Benutzer, in das etwas eingegeben wird, an das wir uns erinnern, und eine Seite, die angezeigt wird, wenn der Cookie eingerichtet ist. Zuerst das Formular: #!/usr/bin/perl -w # cookie-set.cgi - set a cookie use CGI qw(:standard); unless (param()) { # display form print header(), start_html("Cookie Baker"), h1("Cookie Baker"), start_form(), p("What's your name?", textfield("NAME")), submit(), end_form(), end_html(); # cookie-set.cgi will be continued ... Der Einrichtungsprozess besteht aus zwei Teilen: Zuerst wird der Cookie mit der Funktion cookie() erstellt, dann wird er zusammen mit den HTTP-Kopfdaten an den Browser versendet. Im restlichen Code enthält $to_set den Cookie, den wir erstellen; das Argument -cookie für die Funktion header() sendet es an den Browser. # cookie-set.cgi continues ... } else { # process form and set cookie $name = param("NAME"); $to_set = cookie(-name => "username", -value => $name, -expires => "+30s", -path => "/~gnat/zd", ); print header(-cookie => $to_set), start_html("Thanks!"), h1("Thanks for using the Cookie Baker"), p("I set your name to ", b($name), " and I will remember this if you visit ", a({-href => "cookie-get.cgi"}, "here"), " within the next 30 seconds."), end_html(); } Wenn wir mehrere Cookies einrichten würden, würden wir einen Array-Bezug an die Funktion header() senden: header(-cookie => [$name_cookie, $age_cookie, $city_cookie]) Nun werden sie gegessen Cookies abzurufen ist noch einfacher. Rufen Sie einfach die Funktion cookie() mit dem Namen des Cookies auf. Die Funktion zeigt Ihnen den Wert des Cookies an. Das Modul CGI.pm kann keine anderen Parameter eines Cookies wie Domäne, Pfad oder Verfallsdatum, anzeigen. #!/usr/bin/perl -w # cookie-get.cgi - fetch the value of a cookie use CGI qw(:standard); $name = cookie("username"); print header(), start_html("Hello $name"), h1("Hello " . $name || "Stranger"); if ($name) { print p("See, I remembered your name!"); } else { print p("The cookie must have expired."); } print end_html(); Zitieren
Ranes20 Geschrieben 3. September 2002 Geschrieben 3. September 2002 Hi ! Probier es doch mal mit $cookie = $query->cookie(-name=>'hier kommt der name des cookies hin', -value=>'wert', -expires=>'Lebensdauer also wie lange lebt dieses cookie',-path=>'wo befindet sich dat cookie bzw wo soll es gesetzt werden', -domain=>'für welche DOmain soll das Cookie gültig sein'); okay wenn du noch fragen hast schreib einfach Bis dann Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.