OVH Cloud OVH Cloud

Cookie pas reconnu

13 réponses
Avatar
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-bin/cookie-set.pl
le cookie est vraiment créé mais cookie-get.pl
n'arrive pas à le lire !!!

Savez vous ce qui déconne là-dedans ?

3 réponses

1 2
Avatar
Paul Gaborit
À (at) Tue, 06 Jun 2006 18:14:05 +0200,
Nicolas Montessuit écrivait (wrote):
Bien vu, en affichant 'cookie', le vide s'affiche !

Autrement dit, il ne génère pas de cookie !


Heu... Autrement dit, il ne *reçoit* pas de 'cookie'.

Vérifiez que votre navigateur reçoit bien le cookie (au passage
vérifiez le path, le domain et la date d'expiration) et le renvoie
bien ensuite.

--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>

Avatar
Nicolas Montessuit
Paul Gaborit wrote:


À (at) Tue, 06 Jun 2006 18:14:05 +0200,
Nicolas Montessuit écrivait (wrote):
Bien vu, en affichant 'cookie', le vide s'affiche !

Autrement dit, il ne génère pas de cookie !


Heu... Autrement dit, il ne *reçoit* pas de 'cookie'.

Vérifiez que votre navigateur reçoit bien le cookie (au passage
vérifiez le path, le domain et la date d'expiration) et le renvoie
bien ensuite.



J'ai réglé mon navigateur pour qu'il accepte tous les
cookies et ca ne marche toujours pas.

Je crois que le probleme est du coté du serveur...


Avatar
Paul Gaborit
À (at) Wed, 07 Jun 2006 17:08:42 +0200,
Nicolas Montessuit écrivait (wrote):
J'ai réglé mon navigateur pour qu'il accepte tous les
cookies et ca ne marche toujours pas.


Utilisez un navigateur qui vous affiche explicitement les infos de
chaque cookie qu'il reçoit (à chaque fois) et qui puisse montrer ceux
qu'ils envoient.

En tous cas, la dernière version du script dont vous nous aviez donné
l'URL positionnait bien un cookie qui était renvoyé à tout le
serveur. Restait le problème éventuel de la date d'expiration.

Je crois que le probleme est du coté du serveur...


Du serveur lui-même, ça semblerait bizarre. Du script d'envoi et/ou de
réception du cookie, sûrement !

--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>

1 2