I dont think there is any way to do this with PHP, much less any other scripting language. I think its a limitation of HTTP file transfers. Go to any site, and you will see this: try hotmail or some other site where you attach something to an email, you wont get the next screen until the file is done uploading. The only alternative would be to write a Java applet or some other browser-based application to upload for you.
Correct me here if I am wrong, but I think it also has to do with the fact that most scripted langauges (or at least PHP) don't have callback functions. Callbacks usually watch something, such as a file upload, and report information on progress (such as how far the upload has gone). Usually this is accomplished by multiple threads, and a PHP script is a single thread.