Cookie "entschlüsseln"
xNeTworKx
- perl
Hallo,
kleines Problem. Ich will das bei meinem selbstgemachten Forum die Eingabedaten (Name, email, Homepage) gespeichert bleiben, und will diese in einem Cookiewert speichern.
Wenn ich jetzt aber das Cookie abrufen will, setzt er mir bei den Sonderzeichen lauter %AC usw, wie kann ich das Cookie entschlüsseln ?
Ich habe zur Probe ein kleines Script gemacht, das das Cookie setzen und wieder abrufen soll.
#!C:/Perl/bin/perl -w
use CGI;
use strict;
my $name = 'xNeTworKx';
my $email = 'yourmail@test.at';
my $hp = 'http://www.yourhp.com';
my $query = new CGI;
my $cookie = $query->cookie(-name=>'acid4uforum',
-value=>"$name,$email,$hp",
-expires=>'+5m',
-path=>'/');
print $query->header(-cookie=>$cookie);
my $raw_cookies = $ENV{'HTTP_COOKIE'};
my @cookies = split /;/, $raw_cookies;
foreach my $raw_cookie (@cookies) {
if ($raw_cookie =~ /acid4uforum/) {
(undef, my $neuescookie) = split /=/, $raw_cookie;
my($neuer_name, $neues_email, $neue_hp) = split /,/,$neuescookie;
print "$neuer_name<br>\n";
print "$neues_email<br>\n";
print "$neue_hp<br>\n";
}
}
hi,
Wenn ich jetzt aber das Cookie abrufen will, setzt er mir bei den Sonderzeichen lauter %AC usw, wie kann ich das Cookie entschlüsseln ?
ich weiss jetzt nicht, wie es in perl geht, in php waere es urldecode($str)
Gruss Joachim
Hallo,
Wenn ich jetzt aber das Cookie abrufen will, setzt er mir bei den Sonderzeichen lauter %AC usw, wie kann ich das Cookie entschlüsseln ?
$str =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
sollte eigentlich funktionieren.
bye eddie
Hallo,
ja danke, hat geklappt =)