in reply to Need help with CGI::Upload
I think your problem is that you're using a do-it-yourself form processer rather than CGI.pm to get your form parameters, then you're calling CGI.pm as well. CGI handles all form processing for you. If you want a hash of your form parameters you can do this:
my %parse = $cgi->Vars();
Or you can do named parameters:
my $directory = $cgi->param('directory');
Using the two could be the reason you're getting the 'Malformed multipart POST' ... though I can't be sure. At any rate you should still use just CGI.pm
Next you're uuencoding your file as it comes in. I don't think you want to do that if you're going to show the file again in anything else. I don't believe that image programs or browsers are going to be expecting it to be encoded that way.
I don't know if my suggestions will solve your problem but I certainly hope it helps :)
Lobster Aliens Are attacking the world!