Cookie pas reconnu
Le
Nicolas Montessuit
Bonjour,
j'ai deux scripts perl, un qui genere un cookie, l'autre
qui lit le cookie.
Voici les scripts :
--
#!/usr/bin/perl -w
# cookie-set.cgi Définir un cookie
use CGI qw(:standard);
unless (param()) {
# display form
print
header(),
start_html("Cookie Baker"),
h1("Cookie Baker"),
start_form(),
p("Quel est votre nom ?", textfield("NAME")),
submit(),
end_form(),
end_html();
} else {
# Traiter le formulaire et définir le cookie
$name = param("NAME");
$to_set = cookie(-name => "username",
-value => $name,
-expires => "+60s",
-path => ".",
);
print
header(-cookie => $to_set),
start_html("Merci !"),
h1("Merci d'avoir utilisé le Cookie Baker"),
p("Je définis votre nom en ", b($name),
"et je m'en souviendrai si vous revenez ",
a({-href => "cookie-get.pl"}, "ici"),
" dans les 30 prochaines secondes."),
end_html();
}
--
!/usr/bin/perl -w
# cookie-get.cgi Extraire la valeur d'un cookie
use CGI qw(:standard);
$name = cookie("username");
print
header(),
start_html("Bonjour $name"),
h1("Bonjour " . $name || "étranger");
if ($name) {
print p("Vous voyez, j'ai retenu votre nom !");
} else {
print p("Le cookie doit avoir expiré.");
}
print end_html();
-
Quand je lance cookie-set.pl depuis mon serveur
http://bluemoon.anoptique.net/cgi-b...kie-set.pl
le cookie est vraiment créé mais cookie-get.pl
n'arrive pas à le lire !!!
Savez vous ce qui déconne là-dedans ?
j'ai deux scripts perl, un qui genere un cookie, l'autre
qui lit le cookie.
Voici les scripts :
--
#!/usr/bin/perl -w
# cookie-set.cgi Définir un cookie
use CGI qw(:standard);
unless (param()) {
# display form
header(),
start_html("Cookie Baker"),
h1("Cookie Baker"),
start_form(),
p("Quel est votre nom ?", textfield("NAME")),
submit(),
end_form(),
end_html();
} else {
# Traiter le formulaire et définir le cookie
$name = param("NAME");
$to_set = cookie(-name => "username",
-value => $name,
-expires => "+60s",
-path => ".",
);
header(-cookie => $to_set),
start_html("Merci !"),
h1("Merci d'avoir utilisé le Cookie Baker"),
p("Je définis votre nom en ", b($name),
"et je m'en souviendrai si vous revenez ",
a({-href => "cookie-get.pl"}, "ici"),
" dans les 30 prochaines secondes."),
end_html();
}
--
!/usr/bin/perl -w
# cookie-get.cgi Extraire la valeur d'un cookie
use CGI qw(:standard);
$name = cookie("username");
header(),
start_html("Bonjour $name"),
h1("Bonjour " . $name || "étranger");
if ($name) {
print p("Vous voyez, j'ai retenu votre nom !");
} else {
print p("Le cookie doit avoir expiré.");
}
print end_html();
-
Quand je lance cookie-set.pl depuis mon serveur
http://bluemoon.anoptique.net/cgi-b...kie-set.pl
le cookie est vraiment créé mais cookie-get.pl
n'arrive pas à le lire !!!
Savez vous ce qui déconne là-dedans ?

Poser une question


Ecrire
$param{'nom'}="lenom";
$the_cookie = cookie(-name=>'username', -value=>%param, -expires=>'+8760h', -secure=>0);
Relire
%param = cookie('username');
$name=$param{'name'};
Bonne idée mais ca continue a ne pas marcher...
(J'ai fait comme vous dites mais ceux qui vont sur
http://bluemoon.anoptique.net/cgi-b...kie-set.pl
peuvent voir que ca ne marche pas mieux...)
Nicolas Montessuit
Vous définissez un cookie avec le path '.../cookie-set.pl' et vous
tentez de le lire avec un path qui est '.../cookie-get.pl' !
--
Paul Gaborit - Perl en français -
Nicolas Montessuit
Vous définissez un cookie avec le path '.../cookie-set.pl' et vous
tentez de le lire avec un path qui est '.../cookie-get.pl' !
--
Paul Gaborit - Perl en français -
Vous m'intéressez... A quel moment déclaré-je le path de
cookie-get.pl ?
Que dois-je mettre en clair pour que ca marche ? Un path
absolu ?
Merci beaucoup pour votre aide ?