Font
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]68[/thread]

Richtiges löschen von cookies: Opera will nicht



<< >> 10 entries, 1 page
Free Faq
 2003-10-19 15:57
#6629 #6629
User since
2003-09-10
141 articles
BenutzerIn
[default_avatar]
Langsam geht mir das aufn $ack :(
Will meine Cookies so löschen:
Code (perl): (dl )
1
2
3
4
5
6
my $cookie = cookie (
        -NAME => $Name,
        -VALUE => "",
        -EXPIRES => "now",
);
print "Set-Cookie: $cookie";

Schreiben kann ich auf diese Art und Weise! Löschen funktioniert NUR Beim Internet Explorer :(
Jedoch nicht beim Opera! Mozilla spinnt da auch einwenig, aber bei dem funktioniert es wenigstens. Statt now hab ich auch eine negative zahl eingesetzt mit "s" hinten dran,...
Was mach ich falsch?
Haut mich nicht, ich bin ein Noob!
[E|B]
 2003-10-19 16:13
#6630 #6630
User since
2003-08-08
2561 articles
HausmeisterIn
[Homepage] [default_avatar]
Versuch ihn mal so zu löschen:

Code: (dl )
print "Set-Cookie: name=; expires=Mon, 1-Jan-1970 00:00:00 GMT;\n";
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
jan
 2003-10-19 16:23
#6631 #6631
User since
2003-08-04
2536 articles
ModeratorIn
[Homepage] [default_avatar]
wenn du keinen name zuweist, wird sich da wenig tun ;)
Free Faq
 2003-10-19 16:37
#6632 #6632
User since
2003-09-10
141 articles
BenutzerIn
[default_avatar]
Der name wird NATÜRLICH vorher definiert :)
@[E|B]: werds gleich mal ausprobieren! Wenn es nciht funktioniert, dann melde ich denn schon noch ;)

EDIT: Geht nicht Hab auch den namen, den du weg gelassen hast eingetragen, aber der will nicht! :(

EDIT2: Hmm so komisch das auch klingt: Das Script selber funktioniert anscheinend! Irgendwo anderes in meinem Script ist etwas, was Opera nicht gefällt! Komisch das nur Opera die Cookies nicht löschen kann :p

EDIT3: Ok ich glaub ich weiss woran das liegt!:
Das script schreib bei jedem aufrufen einer Seite die Cookies neu, um die Auslaufzeit zu verändern. Nun hat der das auch im Logoutdialog gemacht. Was passierte also, er printete folgendes aus, was Opera wohl nciht gefallen hat:
Code: (dl )
1
2
3
Set-Cookie: login=; path=/; expires=Sun, 19-Dez-2003 13:09:36 GMT \ n \ n
Set-Cookie: login=; path=/; expires=Sun, 19-Oct-2003 13:09:36 GMT \ n \ n
HTML Datei,...

Somit wurde das 2. Cookiesetzen einfach ignoriert. Glaube ich :D\n\n

<!--EDIT|Free Faq|1066569192-->
Haut mich nicht, ich bin ein Noob!
Strat
 2003-10-19 21:11
#6633 #6633
User since
2003-08-04
5246 articles
ModeratorIn
[Homepage] [default_avatar]
Cookie setzen:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
use CGI;
my $cgi = CGI->new();
my $cookie = $cgi->cookie(
-name => $name,
-value => $value,
-path => "/",
-expires => '+1d',
);
print $cgi->header(
-type => 'text/html',
-cookie => $cookie,
);


Cookie loeschen: einfach einen Cookie setzen, der schon abgelaufen ist:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
use CGI;
my $cgi = CGI->new();
my $cookie = $cgi->cookie(
-name => $name,
-value => $value,
-path => "/",
-expires => '-1d',
);
print $cgi->header(
-type => 'text/html',
-cookie => $cookie,
);
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
Strat
 2003-10-19 21:14
#6634 #6634
User since
2003-08-04
5246 articles
ModeratorIn
[Homepage] [default_avatar]
bist du sicher, dass du Opera so eingestellt hast, dass es cookies akzeptiert?
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
Free Faq
 2003-10-19 23:00
#6635 #6635
User since
2003-09-10
141 articles
BenutzerIn
[default_avatar]
ja. Schreiben geht ja wunderbar. Nur das löschen mag es wohl nicht, wie ich es vorhin geschrieben habe.
Haut mich nicht, ich bin ein Noob!
Strat
 2003-10-19 23:43
#6636 #6636
User since
2003-08-04
5246 articles
ModeratorIn
[Homepage] [default_avatar]
dann gehe mal auf Einstellungen -> Privatsphaere -> ueberpruefe, ob Cookies aktiviert ist und waehle empfangene Cookies anzeigen, nur cookies fuer jeweiligen server annehmen, dann warnung bei nicht erlaubten domainen und warnung bei nicht erlaubten pfaden.
dann siehst du mal, ob der cookie kommt oder nicht.
Hatte mit Opera auch mal dieselben Probleme, lag aber an meinen cookie-einstellungen...
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
Strat
 2003-10-19 23:46
#6637 #6637
User since
2003-08-04
5246 articles
ModeratorIn
[Homepage] [default_avatar]
[quote=Free Faq,19.10.2003, 14:37]Set-Cookie: login=; path=/; expires=Sun, 19-Dez-2003 13:09:36 GMT \ n \n
Set-Cookie: login=; path=/; expires=Sun, 19-Oct-2003 13:09:36 GMT \ n \ n
HTML Datei,...
[/quote]
\n\n trennt den http-header vom content, also wenn du mehrere Cookies manuell setzt, dann nur einen Zeilenumbruch dazwischen, nicht zwei\n\n

<!--EDIT|Strat|1066592858-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
[E|B]
 2003-10-20 02:15
#6638 #6638
User since
2003-08-08
2561 articles
HausmeisterIn
[Homepage] [default_avatar]
@Strat & FreeFAQ

Siehe mein Post!
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
<< >> 10 entries, 1 page



View all threads created 2003-10-19 15:57.