# from CGI.pm sub parse_params { my($self,$tosplit) = @_; my(@pairs) = split(/[&;]/,$tosplit); my($param,$value); foreach (@pairs) { ($param,$value) = split('=',$_,2); $value = '' unless defined $value; $param = unescape($param); # this is where the situation goes unchecked... # CGI::Util::unescape returns undef if $param is undef # none the wiser and no error checking! $value = unescape($value); $self->add_parameter($param); push (@{$self->{$param}},$value); } } #### http://your.site.here/cgi-bin/script.pl?param1=value1&=value2¶m3=value3 #### next unless defined $param;