I have a very basic upload script, probably lifted straight off the php.net/move_upload_files function page.
move_uploaded_file() is failed because it canno
move_uploaded_file()
I've had this problem myself. In my case php was uploading to the wrong tmp folder. Instead of using the domains tmp folder (in a virtual host on plesk) it was uploading straight to the OS temporary folder.
Check the settings of your temporary folders