sub doUpload{ my $FileHandle = CGI::param('UploadName'); open OUTFILE, '>TheFileName' or die "Couldn't open output file: $!\n"; while ($Bytes = read($FileHandle,$Buffer,1024)) { $BytesRead += $Bytes; print OUTFILE $Buffer; } warn "Received $BytesRead bytes"; close OUTFILE; }