<?php
// Nelle versioni di PHP precedenti alla 4.1.0 si deve utilizzare $HTTP_POST_FILES anzichè
// $_FILES.
$uploaddir = '/srv/www/htdocs/sito/upload/';
$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 "Possibile attacco tramite file upload!\n";
}
echo 'Alcune infromazioni di debug:';
print_r($_FILES);

print "</pre>";

?>

è questo, ma il problema è nella form o nello script ?
è la form che trasferisce il file in remoto o lo script ?