Thread Cookies: Wie mach ich das? (10 answers)
Opened by youngalcapone at 2004-02-18 19:59

Strat
 2004-02-19 01:03
#1258 #1258
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
use CGI;
# ...
my $cgi = CGI->new();

my $cookie = $cgi->cookie(
-name => "nameDesCookie",
-value => $wert,
-path => "/",
-expires => '+1d',
);

$value kann auch eine Hashreferenz sein, dann kann man so mehrere Werte in einem Cookie speichern.

den cookie kann man dann folgendermaszen setzen:
z.B. durch einen redirect auf eine andere seite
Code: (dl )
1
2
3
4
print $cgi->redirect(
-url => $forwardUrl,
-cookie => $cookie
);

oder durch ausgabe einer normalen seite:
Code: (dl )
1
2
3
4
print $cgi->header(
-type => "text/html",
-cookie => $cookie,
);


Die Werte eines Cookies kann man folgendermaszen bekommen:
Code: (dl )
1
2
3
use CGI;
my $cgi = CGI->new();
my $cookieValue = $cgi->cookie('nameDesCookies');

oder wenn es sich um eine Hashreferenz handelt, weil da mehrere Werte gespeichert sind:
Code: (dl )
my %cookieValue = $cgi->cookie('nameDesCookies');


einen cookie kann man nicht auf der seite auslesen, auf der man ihn setzt, sondern erst auf einer nachfolgenden. deshalb verwende ich da gerne den redirect von oben, ueberpruefe dann auf der neuen seite, ob der cookie gesetzt wurde, und bekomme somit mit, ob der cookie erfolgreich gesetzt werden konnte...
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread Cookies: Wie mach ich das?