sub get_params {
my @cookie_data = split(/; /, $ENV{'HTTP_COOKIE'});
foreach $cookie (@cookie_data){
(my $one, my $two) = split(/=/, $cookie);
$cookies{$one} = $two;
$params{$one} = $two;
}
if ($ENV{'REQUEST_METHOD'} eq "GET"){
my @form_data = split(/&/, $ENV{'QUERY_STRING'});
foreach $form (@form_data){
(my $one, my $two) = split(/=/, $form);
if ($one =~ m/\+/){
$one =~ s/(\+)/" "/eg;
}
if ($two =~ m/\+/){
$two =~ s/(\+)/" "/eg;
}
$one =~ s/%([\da-fA-F][\dA-Fa-f])/pack("C", hex($1))/eg;
$two =~ s/%([\da-fA-F][\dA-Fa-f])/pack("C", hex($1))/eg;
$form{$one} = $two;
$params{$one} = $two;
}
}
if ($ENV{'REQUEST_METHOD'} eq "POST"){
read(STDIN, my $form_data, $ENV{'CONTENT_LENGTH'});
my @form_data = split(/&/, $form_data);
foreach $form (@form_data){
(my $one, my $two) = split(/=/, $form);
if ($one =~ m/\+/){
$one =~ s/(\+)/" "/eg;
}
if ($two =~ m/\+/){
$two =~ s/(\+)/" "/eg;
}
$one =~ s/%([\da-fA-F][\dA-Fa-f])/pack("C", hex($1))/eg;
$two =~ s/%([\da-fA-F][\dA-Fa-f])/pack("C", hex($1))/eg;
$form{$one} = $two;
$params{$one} = $two;
}
}
return %cookie, %form, %params;
} In reply to Get those parameters without CGI.pm by j.a.p.h.
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |