$new_name non sarà mai vuoto ma avrà almeno un punto
cambia così e vedrai l'errore
codice:@move_uploaded_file($_FILES["upfile"]["tmp_name"], "$upload_dir/$file_name") or die("Impossibile inviare il file, controllare i permessi della directory: Path:$upload_dir/$file_name");