UPLOAD_FILE: { for my $file_num (1..5) { my $file = $grab_file->param("file$file_num") or next UPLOAD_FILE; if ($file) { my $buffer; my $file_handle = $grab_file->upload($file); my $format = $grab_file->uploadInfo($file)->{'Content-Type'}; # This will create the new file sysopen OUTFILE, UPLOAD_DIR . $file, O_CREAT or die "Can't open UPLOAD_DIR$file: $!"; while ( read( $file_handle, $buffer, BUFFER_SIZE ) ) { print OUTFILE $buffer; } close (OUTFILE); # This will store the file name in the database push @statement,"INSERT INTO documents (record_id, document) VALUES ('$record_id', '$file')"; } } }