ok questo script mi funziona correttamente (fonte php.net)
Codice PHP:

$uploaddir 
'./foto/';
$uploadfile $uploaddir basename($_FILES['userfile']['name']);

echo 
'<pre>';
if (
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
   echo 
"File is valid, and was successfully uploaded.\n";
} else {
   echo 
"Possible file upload attack!\n";
}

echo 
'Here is some more debugging info:';
print_r($_FILES);

print 
"</pre>"
mi aiutate da qui?
come faccio a rinominare il file applicando md5(uniqid(microtime(), true));

help!