$buffer = ""; read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); @pairs=split(/&/,$buffer); foreach $pair (@pairs) { @a = split(/=/,$pair); $name=$a[0]; $value=$a[1]; $value =~ s/\+/ /g; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ s/~!/ ~!/g; $value =~ s/\/\>\;/g; # html tag removal (remove these lines to enable HTML tags in messages) $value =~ s/[\r\n]//g; if ($name eq "username") { $value =~ s/\s*$//g; } push (@data,$name); push (@data,$value); } %form=@data; %form;