ti suggerire di usare flash actionscript3 cosi puoi mettere la tua barra progressiva e il pulsante personalizzati viene una cosa ben fatta.
Qui trovi una spiegazione:
clicca qui
se ti serve aiuto chiedi
oppure rimanendo sul php c'è quello che cerchi eccoti il sorgente
codice:
<?php
if(isset($_GET['fileName']) && file_exists($_GET['fileName']))
{
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($_GET['fileName']));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($_GET['fileName']));
ob_clean();
flush();
readfile($_GET['fileName']);
unset($_GET['fileName']);
exit();
}
devi passargli tramite get una variabile "fileName" con valore il percorso del file +nomefile+estensione.
Attento però che cosi chiunque può scaricare ciò che vuole dal tuo sito quindi per esempio potresti mettere un filtro cioè fare una lista dei file che si possono scaricare e confrontarli quando si cerca di eseguire un download oppure ci sono tanti altri metodi.