http://qs1969.pair.com?node_id=497428

This sub takes a HTTP::Request, and returns a hash data structure that contains all form fields. If you have a form field named "blah", and the returned hash is stored in $form_data, then you can get the value for blah through $form_data->{"blah"}.

The asumption is that the form use multipart/form-data encoding. The code is something I use, and not heavily tested with differnt situations.

sub analyze_request { my $req = shift; my $form_data; for my $part ($req->parts()) { if (my $content_disposition = $part->headers->header("Content- +Disposition")) { if ($content_disposition =~ /^form-data; name=\"(.*?)\"/) +{ $form_data->{$1} = $part->content(); } } } return $form_data; }