use CGI; my $i = new CGI; my $ieFileMod; my $upload_filename = $i->param( 'JARFILE' ); my $upload_filehandle = $i->upload( 'JARFILE' ); # handle copying the file to server $upload_filename =~ m/^.*(\\|\/)(.*)/; # strip the remote path and keep the filename # still need to do something if its IE submitted file, since above regex doesn't clean up filename for IE if( $upload_filename =~ /\\/ ) { my @nameList = split( /\\/, $upload_filename ); $ieFileMod = pop( @nameList ); } my $finalName = $upload_filename; if( $ieFileMod ) { $finalName = $ieFileMod; } my $localFile = "java\\$finalName"; # copy the jar file in binary mode to server open UPLOADFILE, ">$localFile"; binmode UPLOADFILE; while ( <$upload_filehandle> ) { print UPLOADFILE; } close UPLOADFILE;