PHP - Каковы правильные заголовки для загрузки файла? - PullRequest
1 голос
/ 15 декабря 2011

У меня есть фрагмент кода, который позволяет пользователям загружать файлы с сервера (такие документы, как документы, документы, PDF и т. Д.).

Пользователи могут загружать файлы, но есть некоторые ошибки, например, файлы были сломаны. Например, файл MS Word после загрузки необходимо восстановить, чтобы прочитать содержимое.

Интересно, есть ли какая-либо ошибка в этом коде (или проблема при загрузке?).

$size_of_file = filesize($download_path);
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . $file_name);
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: ' . $size_of_file);
//read file from physical path
readfile($download_path);

enter image description here

Ответы [ 2 ]

1 голос
/ 15 декабря 2011

Я нашел корень проблемы, после тега php close у меня появилось несколько лишних пробелов. Спасибо, ребята.

1 голос
/ 15 декабря 2011

Ты пробовал вот так?

<?php
    header("Content-type: application/vnd.ms-word");
    header("Content-Disposition: attachment; Filename=SaveAsWordDoc.doc");
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...