Schrift
[thread]117[/thread]

Problem mit Header

Leser: 1


<< >> 8 Einträge, 1 Seite
stb2050
 2003-12-20 23:07
#551 #551
User since
2003-08-14
87 Artikel
BenutzerIn
[default_avatar]
Hi Ihr,

erstmal frohe Weihnachten an alle :-)

Habe ein kleines Problem mit einem Header. Und zwar soll erst ein Cookie geschrieben werden und danach auf eine andere Seite umgeleitet werden. Ich mache das so:

Code (perl): (dl )
1
2
3
$hash = $q->cookie(-name=>'sessionid',-value=>'$id',-expires=>'+1d');
print $q->header(-cookie=>$hash);
print "Location: $url\n\n";


Problem dabei ist, dass nicht weitergeleitet wird, sondern der Text "Location: ...." im Browser erscheint.

Wie kann ich das lösen? Gibt es einen Art "kill header"-Befehl, den ich vor dem Location-Code ausführen kann?

Viele Grüße & vielen Dank
Steffen
jan
 2003-12-20 23:21
#552 #552
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
ich schätze, q ist ein CGI-objekt, richtig? ich arbeite nciht mit CGI.pm für's headerschicken, aber ich nehme an, dass die methode header auch gleich den abschluss gibt, also das doppelte newline. kannst du ihr vielleicht mehrere header-lines übergeben?
stb2050
 2003-12-20 23:31
#553 #553
User since
2003-08-14
87 Artikel
BenutzerIn
[default_avatar]
Hi Jan,

ja, ist ein CGI-Objekt.

Gleich mehrere übergeben? Verstehe ich leider nicht ganz, wie genau meinst Du das?

Viele Grüße & vielen Dank
Steffen
renee
 2003-12-21 00:11
#554 #554
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
so kannst Du es nicht lösen...

Am einfachsten ist es, wenn Du JavaScript einsetzt:
Code: (dl )
1
2
3
$hash = $q->cookie(-name=>'sessionid',-value=>'$id',-expires=>'+1d');
print $q->header(-cookie=>$hash);
print "<script language=javascript>location.href=\"$url\";</script> ";
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
jan
 2003-12-21 00:15
#555 #555
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
bitte was, am einfachsten ist es, wenn du javascript einsetzt? entschuldige, aber das ist grober blödsinn.

ich schätze, es funktioniert, wenn du es so machst:
Code: (dl )
1
2
$hash = $q->cookie(-name=>'sessionid',-value=>'$id',-expires=>'+1d');
print $q->header(-cookie=>$hash, -location=>$url);
Strat
 2003-12-21 00:25
#556 #556
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
geht auch mit CGI sehr einfach:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
use CGI;
my $cgi = CGI->new();
my $cookie = $cgi->cookie(
 -name    => "name",
 -value   =>  "id",
 -path    => "/",
 -expires => '+1d',
);

print $cgi->redirect(
 -url => $forwardUrl,
 -cookie => $cookie
);

die javascript-loesung halte ich fuer schlecht, weil da die navigation von javascript abhaengig ist, waehrend es so eine http-header-sache ist...\n\n

<!--EDIT|Strat|1071959192-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
renee
 2003-12-21 00:28
#557 #557
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
ich gebe mich geschlagen ;)
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
stb2050
 2003-12-21 00:55
#558 #558
User since
2003-08-14
87 Artikel
BenutzerIn
[default_avatar]
Hi Ihr,

danke, hat geklappt :-)

Merry Xmas.

Viele Grüße
Steffen
<< >> 8 Einträge, 1 Seite



View all threads created 2003-12-20 23:07.