metti in una pagina del tuo sito un form con ENCTYPE="multipart/form-data"

Codice PHP:
form action="pagina.php" method="post" enctype="multipart/form-data">
inserisci file :<input type="file" name="userfile">
</
form
che poi recuperi con

Codice PHP:
//percorso della cartella dove mettere i file caricati
$uploaddir 'cartella/';

//Recupero il percorso temporaneo del file
$userfile_tmp $_FILES['userfile']['tmp_name'];

//recupero il nome originale del file caricato
$userfile_name $_FILES['userfile']['name'];

//copio il file dalla locazione temporanea alla mia cartella upload
if (move_uploaded_file($userfile_tmp$uploaddir $userfile_name))
{
//Se l'operazione è andata a buon fine...
echo "file caricato con successo";
}
else
{
//Se l'operazione è fallta...
echo "upload file fallito"

prova con me funziona magari poi tramite il form puoi assegnare la grandezza massima del file, aggiungendo
Codice PHP:
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="inserisci il valore massimo di grandezza"