Homepage selbermachen 7.852 Themen, 35.619 Beiträge

CGI -Perl :Wie im Query-String einzelnen Wert auslesen?

(Anonym) / 1 Antworten / Baumansicht Nickles

Hallo Leute,

ich möchte im Query String einen Wert auslesen.
Mit $ENV{QUERY_STRING} kann ich den ganzen String ansprechen.
Bsp. Name=Klaus&Alter=23
Kann ich das Alter direkt abfragen? Wenn ja wie?
Ich hab schon einiges ausprobiert, aber es geht nicht
$ENV{QUERY_STRING[Alter]} oder ähnliches.
Bitte helft mir.
Gruß Wolf

bei Antwort benachrichtigen
robinpfeifer (Anonym) „CGI -Perl :Wie im Query-String einzelnen Wert auslesen?“
Optionen

Du mußt den String zunächst in ein assoziatives Array einlesen:

@AnfrageElemente = split (/&/, $DeinString); (teilt den String in Einzelelemente auf, die aus Key / Wert-Paaren bestehen)
%AnfrageDaten = (); (generiert das Array)
foreach $Element (@AnfrageElemente)
{
($Vari, $Wert) = split (/=/, $Element);
if ($Wert eq "") {next}; (dieser Teil filtert leere Keys aus)
chomp ($Vari);
chomp ($Wert);
$AnfrageDaten {$Vari} = $Wert;
}

Die foreach-Schleife nimmt die Key/Wert-Paare und trennt sie am Gleichheitszeichen. Das linke Element wird Key, das rechte Wert. Anschließend kannst Du die Werte der Keys in diesem Array abfragen.

Robin

bei Antwort benachrichtigen