Kod jest na pierwszy rzut oka OK, tylko mam pytanie dlaczego nie uzywasz modulu CGI tylko sam maglujesz parametry post/get.Ja wiem ze modul CGI jest ciezki i dlugo sie laduje, dlatego do czesto wysylanych formularzy warto miec skrypt dzialajacy w postaci FastCGI aby siedzial w pamieci i oszczedzasz wtedy mase czasu...
Kod:
use CGI;
my $cgi=CGI->new();
...
my %dane_uzytkownika = &wczytaj_dane;
print "Content-type: text/html\n\n";
print "<HTML>\n<HEAD>\n";
print "<TITLE>Dane po stronie serwera</TITLE>\n";
print "</HEAD>\n<BODY>\n";
foreach (keys %dane_uzytkownika) {
print "$_ = $dane_uzytkownika{$_}<BR>";
}
print "</BODY>\n</HTML>\n";
sub wczytaj_dane {
local %dane;
$dane{wiek} = $cgi->param('wiek');
$dane{miasto} = $cgi->param('miasto');
...
return %dane;
}
Jesli nie masz konkretnego powodu aby nie uzywac modulu CGI to proponuje sobie uproscic zycie. W CGI czytasz kazdy parametr tak samo czy to POST czy GET. Jesli koniecznie potrzebujesz to poszukam w moim archiwum dzialajacego kodu do recznego czytania POST/GET ale nie wiem czy jest sens, tym bardziej ze Twoj kod wyglada OK ale go nie uruchamialem... pakuje sie wlasnie do pracy bede za 45 minut...