I've got a guess here, but because it sounds like a wall I've run into before: This might not be a perl
problem at all. Did you set the encoding to be something like
"multipart/form-data" in your HTML <FORM> tag? There's
more documentation on this in the CGI.pm docs.