Manuel Massoth: problem mit auslesen des query-string nach "?"

Beitrag lesen

Guten Morgen,

und zwar habe ich eine url in einer text datenbank. von dieser url will ich ein query-string auslesen. das funktioniert auch soweit, jedoch nicht bei dem ersten string der direkt hinter dem "?" kommt. das ausgelesen funktioniert nur nach dem ersten "&".

?q=keyword& # wird nicht ausgelesen
&q=keyword& # wird ausgelesen

Bespiel:

$Dateiname = "search?q=keyword1 keyword2&ie=UTF-8&oe=UTF-8&hl=de&btnG=Google Suche&meta="

@wertepaare = split(/&/, $Dateiname);
foreach $wertepaar (@wertepaare)
{

($name, $value) = split(/=/, $wertepaar);
$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ s/|/%7C/g;
$value =~ s/~!/ ~!/g;

if ("$name" eq "q") {
open (LOG, >>keywords.dat");
print LOG "$value\n";
close (LOG);
}

}

wenn mir jemand sagen könnte wo der wurm drin steckt,
wäre ich sehr dankbar.

Gruß
Manuel