得到传递的CGI参数[未完稿]

得到传递的CGI参数[未完稿]

得到传递的CGI参数[未完稿]
####################################
if ($ENV{'REQUEST_METHOD'} eq "POST") {
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
}
else {
$buffer = $ENV{'QUERY_STRING'};
}
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value=~tr/+/ /;
$value=~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value=~s/<!--(.|\n)*-->//g;
$value=~s/\t/&nbsp;&nbsp;&nbsp; /g;
$value=~s/>/>/g;
$value=~s/</</g;
$value=~s/\.\.//g;
$value=~s/\\//g;
$FORM{$name} = $value;
}
###########################
use CGI;--$IN = CGI-&g.
use CGI;
$IN = CGI->new;
%FORM = map { cleankey($_) => cleanvalue($IN->param($_)) } $IN->param;
用模块当然可以了--但是.
用模块当然可以了
但是这样就不能体现原理了