if($HTTP_POST_FILES['userfile'] !=""){
Not really a concern however you should be looking to make sure the file input is set as well as the upload value empty.
I also think you should use the error value that also comes with the File Upload use that as it will help quite a lot when a file cannot be uploaded.
Im not much of a [man]copy[/man] fan so id recommend using [man]move_uploaded_file[/man] its much better to use especially when safe_mode is on and a few other configuration options that will not work when using [man]copy[/man]
Lastly maybe making sure the filesize isnt 0 I think theres something on that in the error value of the file upload not sure.