if ($ENV{'REQUEST_METHOD'} eq 'GET') {
@pairs = split(/&/, $ENV{'QUERY_STRING'});
} elsif ($ENV{'REQUEST_METHOD'} eq 'POST') {
read (STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
@pairs = split(/&/, $buffer);
####
## REMOVE poison NULL
$key =~ s/\0//g;
$value =~ s/\0//g;
## Clean characters to remove weird stuff
my $allowedCHARS = 'a-zA-Z0-9\!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\:\;\<\=\>\?\@\[\\\]\^\_\`\{\|\}\~';
$key =~ s/[^$allowedCHARS]//gi;
$value =~ s/[^$allowedCHARS]//gi;
##
##
$key =~s///g;
##
##
###=== Begin Cosmetic/Functionality addition ========
## REMOVE LEADING BLANKS
$key =~ s/^\s*//;
## REMOVE TRAILING BLANKS
$key =~ s/\s*$//;
###=== End Cosmetic/Functionality addition ==========
##
##
if ($formdata{$key}) {
$formdata{$key} .= ", $value";
} else {
$formdata{$key} = $value;
}
##
##
my @values = split /, /, $formdata{ $somekey };