php - Имя файла при использовании firefox для загрузки
Я вижу этот учебник по загрузке файла, но у меня проблема
Вот мой пример
$file_url = "D:/my file name.doc"
header('Content-Type: text/json; charset=UTF-8;');
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . basename($file_url)."");
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($file_url));
ob_clean();
flush();
readfile($file_url);
В ie или chrome все хорошо. Но когда я использую firefox
для загрузки файла. Загрузка файла имеет my
- это имя файла? Как это исправить, спасибо
2
Author: LookAtMeNow, 2013-08-08
3 answers
header('Content-Disposition: attachment; filename="' .basename($file_url).'"');
2
Author: Amit Kumar Sharma, 2013-08-08 10:09:04
Прежде всего, вам не хватает ;
в конце первой строки.
Я думаю, что проблема в имени файла с пробелами.
Попробуйте использовать readfile(urlencode($file_url));
вместо readfile($file_url);
1
Author: JTC, 2013-08-08 10:05:13
Вы должны указать имя файла в кавычках.
header('Content-Disposition: attachment; filename="' . basename($file_url) . '"');
РЕДАКТИРОВАТЬ: Это был выбранный ответ, только с опечаткой. Теперь я это исправил.
1
Author: Dexa, 2013-08-08 13:43:09