Quella soluzione non è compatibile con tutti i browser.
usa questa:

Codice PHP:
    $user_agent=${"HTTP_USER_AGENT"};
        
// nome del file
        
$nomefile "provaprova.doc";
        
//lunghezza del file
        
$len 5044;
        
// sorgente del file, che puoi leggere con fread()
        
$sorgente "asdsadadasd";

    if (
strpos($user_agent,"Gecko")) $nomefile str_replace("ö","o",str_replace("ä","a",strtolower($nomefile)));
    
header("Pragma: public");
    
header("Cache-control: private"); // fix for IE
    
header("Expires: 0"); 
    
header("Content-type: application/RFC822");
    
header("Content-type: octet/stream\n");
    
header("Content-transfer-encoding: binary\n"); 
    
header("Content-Disposition: attachment; filename=".stripslashes($nomefile)."\n");
    
header("Content-Length: ".$len);
    echo 
$sorgente;
    exit();