@BuBux

Сохранение doc-файлов на компьютер?

$file = 'name.doc';
if ($file !='') {
    $url = 'url' . $file;
    $path = $_SERVER['DOCUMENT_ROOT'] . '/upload/files/' . $file;

    file_put_contents($path, file_get_contents($url));

    $filename = $file;   // имя файл предложенное для сохранения в окне браузера
    $myFile = $_SERVER['DOCUMENT_ROOT']."/upload/files/" . $file; // файл на серевере

    $mm_type="application/octet-stream";

    header("Cache-Control: public, must-revalidate"); // кешировать
    header("Pragma: hack");
    header("Content-Type: " . $mm_type);
    header("Content-Length: " .(string)(filesize($myFile)) );
    header('Content-Disposition: attachment; filename="'.$filename.'"');
    header("Content-Transfer-Encoding: binary");

    readfile($myFile); // прочитать файл и отправить в поток

    unlink($_SERVER['DOCUMENT_ROOT']."/upload/files/" . $file); 
}

Картинки и pdf файлы сохраняются нормально, а вот тот же вордовский файл сохраняется пустым. Пробовал header("Content-Type: *.*") , но не помогает. Также пробовал вовсе этот заголовок не указывать, тогда файл сохраняется битым.
  • Вопрос задан
  • 89 просмотров
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы