Cookies setzen und auslesen

dark_ghost

Erfahrenes Mitglied
Hallo zusammen,

ich möchte mit hilfe von cookies Informationen speichern um zu einem späteren Zeitpunkt (max. innerhalb der nächsten 5minuten) wieder darauf zugreifen zu können.

Folgender Programmablauf:

Eingabe von Benutzernamen und Passwort über ein HTML Formular.

Daten werden an ein Perlscript übergeben, dieses liest die Parameter aus und speichert deren Werte auf Variablen ($benutzerIN, $pwIN)
(Hier könnte/sollte das cookie gesetzt werden)
Anschließend wird die Eingabe des Users mit den Vorgaben in einem Config-file verglichen.
Sind die Angaben des Users korrekt wird dieser zum nächsten HTML-Formular weitergeleitet, andernfalls bekommt er eine Fehlermeldung.

Über dieses Formular kann der Anwender nach Rechnungen suchen, seine Suchanfrage wird an ein weiteres Perl-Script geschickt, welches die Anfrage auswertet und die Ergebnisse ausgibt. (Hier benötige ich jetz den Benutzernamen des Users)


Ziel:

Ich möchte jetzt bei der Anmeldung den Benutzernamen in ein Cookie schreiben und dieses später wieder auslesen um zu wissen welcher Benutzer die Suchanfrage gestellt hat.
Wie setze ich ein cookie und wie lese ich es wieder aus

Ich habe bis jetz nur Beispiele gefunden in denen das ganze in einem Script geschieht, bei mir sind es aber zwei scripte.
Im ersten muss es gesetzt werden und im zweiten wieder ausgelesen.


Vielen Dank, ich hoffe ihr könnt mir helfen.
Andreas
(ich weis, dass ich noch einen offenen Thread habe aber dieses Problem ist sehr wichtig, danke ;) )
 
Skript1:
Code:
#!/usr/bin/perl

use strict;
use warnings;
use CGI;

my $cgi = CGI->new();
my $cookie = $cgi->cookie(-name=>'meinErstesCookie',
                             -value=>'xyzzy',);

print $cgi->header(-cookie => $cookie);
print $cgi->h2('Cookie gesetzt');

Skript2:
Code:
#!/usr/bin/perl

use strict;
use warnings;
use CGI;

my $cgi = CGI->new();
my %cookie = $cgi->cookie('meinErstesCookie');

print $cgi->header();
for my $key(sort keys %cookie){
  print $key," -> ",$cookie{$key},"\n";
}

Blick in die Doku von CGI hilft...
 
Hi renee,

danke für Deine schnelle Antwort!
Ich habe das ganze etwas geändert und schon hats funktioniert :)


Vielen Dank
Andreas
 
Zurück