open(OUTFILE, ">$UPLOAD_DIR\/$file_name") or die "Upload failed ($!)"; binmode $fh; binmode OUTFILE; while ($bytes=read($fh, $buffer, 1024)) { $bytes_read += $bytes; print OUTFILE $buffer; } die "read failure ($!)" unless defined($bytes);