Io ho risolto il problema così (la soluzione l'ho trovata in rete ma non mi ricordo dove).
Nella pagina web devi inserire un form:
// CARICAMENTO FILE
<form name="form1" method="post" action="script_destinazione.php" enctype="multipart/form-data" target="bottomFrame">
<input type="file" name="upfile" >
<input type="submit" name="invia" value="Invia">
</form>


poi, nello script d'arrivo che riceve il file ho inserito il seguente codice:

<?php
// UPLOAD DEL FILE E DEPOSITO NELLA CARTELLA EVENTI
$upload_dir=$_SERVER["DOCUMENT_ROOT"]."/nome_directory_destinazione";
$new_name = "";
$file_name =($new_name) ? $new_name : $_FILES["upfile"]["name"];
if (trim($_FILES["upfile"]["name"])==""){
die ("Non hai indicato il file da caricare!");
}

if (@is_uploaded_file($_FILES["upfile"]["tmp_name"])) {
@move_uploaded_file ($_FILES["upfile"]["tmp_name"], "$upload_dir/$file_name")
or die ("Impossibile spostare il file, controlla l'esistenza o i permessi della directory dove fare l'upload.");
}else{
die("Problemi nell'upload del file".$_FILES["upfile"]["name"]);
}
print "<h4>L'upload del file ".$_FILES["upfile"]["name"]." nella directory
di destinazione è avvenuto correttamente.</h4>
";
// FINE UPLOAD
?>

una volta che il file è depositato in una directory su server puoi farci ciò che vuoi.
Spero possa esserti utile, a me funziona benissimo.
Ciao.