ma praticamente come si fa?
se ho capito bene un utente esegue il login, quindi ci sarà una variabile che continene il nome dell'utente, poi nel momento dell'upload creao una cartella con il nome utente contenuto nella variabile, poi immagino che ci dovrà essere un controllo se la cartella esiste o meno, e se il file nella cartella esiste o meno giusto??
ma praticamente come faccio queste operazioni???
metto il codice del upload da modificare per non farvi riscrivere tutto 
codice:
<?
// QUESTE RIGHE RENDONO LO SCRIPT COMPATIBILE CON LE VERSIONI
// DI PHP PRECEDENTI ALLA 4.1.0
if(!isset($_FILES)) $_FILES = $HTTP_POST_FILES;
if(!isset($_SERVER)) $_SERVER = $HTTP_SERVER_VARS;
// Directory dove salvare i files Uploadati ( chmod 777, percorso assoluto)
$upload_dir = $_SERVER["DOCUMENT_ROOT"] . "/upload";
// Eventuale nuovo nome da dare al file uploadato
$new_name = "";
// Se $new_name è vuota, il nome sarà lo stesso del file uploadato
$file_name = ($new_name) ? $new_name : $_FILES["upfile"]["name"];
if(trim($_FILES["upfile"]["name"]) == "") {
die("Non hai indicato il file da uploadare !");
}
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"]);
}
$allowed_types = array("audio/mpeg3","audio/x-mpeg-3","video/mpeg","video/x-mpeg");
if(!in_array($_FILES["upfile"]["type"],$allowed_types)) {
die("Il file non e' di un tipo consentito, sono ammessi solo i file mp3: " . implode(",", $allowed_types) . ".");
}
echo "L'upload del file " . $_FILES["upfile"]["name"] . " è avvenuto correttamente";
?>
e poi un altra cosa, se mi potete fare uno script che mostra i file presenti in una cartella, grazie