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
Homepage selbermachen 7.852 Themen, 35.619 Beiträge
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