in reply to still confused with CGI and carriage returns carriage returns
I've encountered this problem before, but I wasn't using CGI.pm's extensions: I parsed the input myself with some handy bits:
The above code runs everything through nice and quick, and if you still want to use your CGI.pm extensions you can (since this doesn't rely on it, you can also omit that line). The beauty of this script is it will read everything in and parse it at once so you don't have to go fishing for any of the values you need. The values you accessed before would now be: $FORM{'FILE1'}, $FORM{'login'}, $FORM{'description'}; Similarly you're free to use a "foreach $key (keys %FORM){};" on this. Enjoy!use CGI qw/:standard/; read(STDIN, $formdata, $ENV{'CONTENT_LENGTH'}); @pairs = split(/\&/, $formdata); foreach $pair (@pairs){ ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%0D%0A/\n/g; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $FORM{$name} = $value; }
|
---|
Replies are listed 'Best First'. | |
---|---|
An addendum...
by Keighvin (Novice) on Apr 26, 2000 at 22:32 UTC |
In Section
Seekers of Perl Wisdom