Bonjour,
Je cherche à définir un cookie en Perl ?
Savez-vous faire cela ? J'ai regardé du côté de Set-Cookie mais rien de vraiment probant.
Merci.
Version imprimable
Bonjour,
Je cherche à définir un cookie en Perl ?
Savez-vous faire cela ? J'ai regardé du côté de Set-Cookie mais rien de vraiment probant.
Merci.
C'est du CGI, cherche la fonction cookie() .
définir un cookie :
pour récupérer le cookie :Code:
1
2
3
4
5 $variable = cookie(-name => "connectsite", -value => "tes déja passé dans ma page", ); print header(-cookie => $variable) ;
Code:
1
2 $deja_connect = cookie("connectsite");
Ca n'a pas l'air de fonctionner plus !
Comment faire fonctionner les cookies en perl ?
Moi je te donne un exemple qui marche chez moi..
Sa vient d'une Administration en page web avec mémorisation du niveau d'acces lors de l'ouverture :
Envoi un cookie :
$lvl est le niveau d'accès au site web.Code:
1
2
3 $acces=cookie (-name => "accesdrak" , -value => $lvl ) ; print header(-cookie => $acces) ;
Réception du cookie :
Sa je peux te dire à 100% que sa marcheCode:
1
2 $acces = cookie('accesdrak') ;
Bonjour,
Est-il possible d'enregistrer une variable de hache dans un cookie ?
%variable
Merci.Code:
1
2
3 print "set-Cookie:PEC_LANG=%PEC_LANG\n"; $cgi->header(-cookie=>%PEC_LANG);
Pour ma part je dirais non... mais pas à 100%.
A toi de tester.
De plus,
ton code a laire faux car ton cookie n'est pas prédéfini
Ma variable de hache est défini mais je n'ai pas réécrit le code.
Pour le cookie, ça fonctionne !
Quel est le meilleur moyen pour transmettre d'un script Perl à un autre, une variable de hache autrement que valeur par valeur ?
Merci.
Tu peux la sérialiser et la mettre dans un fichier, dont tu passes le nom. Néanmoins si tu commences vraiment à avoir ce type de besoin, je te conseille d'aller voir du côté des systèmes de session (fais une petite recherche sur le forum pour avoir une première idée de ce dont je parle).
--
Jedaï
J'ai enregistre une session.
Mais quand je souhaite recuperer la valeur, j'obtiens qqch qui n'a rien à voir.
Code:
1
2
3
4
5
6
7 my $session=new CGI::Session("driver:File", undef, {Directory=>'/tmp'}); foreach (%PEC_LANG) { ($nom,$valeur) = each(%PEC_LANG); $session->param($nom, $valeur); }
Dans le 2e script, j'obtiens 6 alors que je devrais obtenir Informations.Code:
1
2
3 my $session=new CGI::Session("driver:File", undef, {Directory=>'/tmp'}); print $session->param($0102)."<br>";
Merci.