per qualche oscuro motivo che ignoro, questo codice non va

<?php
set_time_limit(3600);
ob_start();

echo("Caricamento in corso
");

flush();
ob_flush();

move_uploaded_file ($_FILES['icona']['tmp_name'], "testupload/" . $_FILES['icona']['name']);

echo("Caricamento completato");

flush();
ob_flush();

ob_clean();
?>

caricamento in corso e caricamento completato me lo mostra solo al termine dell'upload
sicuramente sbaglio qualcosa, o forse non funziona con i post, o ancora il flush non funziona perchè il server non è settato a dovere ecc... cosa consigliate?

grazie 1000

se può servire, da phpinfo()

output_buffering 4096 4096