2013-06-18 3 views
0

Я пытаюсь загрузить PDF-файл при нажатии ссылки, но я продолжаю получать предупреждения заголовков и странные символы из файла readfile.Не удается загрузить pdf-файл с сервера

<a> тег:

<p>The pdf file is large and can take a minute to download. 
You can <a href="/icisherbrooke/downloadAnnuaire.php">click here to download the pdf.</a></p> 

download.php файл:

<?php 

$fullpath = 'annuaire_2013-14_optimized3.pdf'; 

if(file_exists($fullpath)){ 
    header('Content-Description: File Transfer'); 
    header('Content-Type: application/octet-stream'); 
    header('Content-Disposition: attachment; filename="annuaire_2013-14_optimized3.pdf"'); 

    readfile($fullpath); 
    exit(); 
} 

?> 

Когда я заменить заголовки и ReadFile на echo "test", это работает.

Вместо подсказки загрузки я перенаправлен на download.php. Вот часть результата для download.php:

Warning: Cannot modify header information - headers already sent by (output started at /home/kanope/vhost_file/info-rapide.com/icisherbrooke/downloadAnnuaire.php:1) in /home/kanope/vhost_file/info-rapide.com/icisherbrooke/downloadAnnuaire.php on line 8 %PDF-1.6 %���� 1561 0 obj <> endobj 1575 0 obj <>/Filter/FlateDecode/ID[<0EC5F18608359D479CC3DB0FF72E23C8><997B135B48FBE541BDE876EE8BECFD9D>]/Index[1561 20]/Info 1560 0 R/Length 95/Prev 216592620/

+1

Похоже, что у вас есть пробелы в строке 1. Возможно, спецификация. – Jessica

+1

Вы правы, это была действительно спецификация. Я изменил кодировку в Notepad ++ на UTF8 без спецификации, и новый файл работает. Если бы вы отправили это в качестве ответа, я мог бы принять его. Спасибо. – oliboon

ответ

1

Как ошибка указывает на то, есть некоторый выход на линии 1. Это, как правило, пробелы. Если вы не видите пробелов, проверьте спецификацию. :)