Как заставить IE6 дружить с PDF

demmi

Guest
Как заставить IE6 дружить с PDF

Как заставить IE6 выводить pdf документ?
есть код:
PHP:
$file='мой_файл.pdf';
@Header("Content-Type: application/pdf");
@Header("Content-Length: ".filesize($file));
@Header("Content-Disposition: inline; filename=$file");
readfile($file);
exit;
Результат - менюшка записи файла на диск.
Где ошибка?
 

Voxus

founder (Старожил PHPCluba)
@Header("Content-Disposition: inline; filename=\"$file\"");

т.е. имя заковычить нужно..
 

Mammoth

Guest
Voxus, при чем тут имя файла?
demmi, а у тебя Acrobat Reader установлен?
 

demmi

Guest
Acrobat Reader 5 стоит,
в Опере и Мазилле работает а в IE не катит
 

Mammoth

Guest
Давай поэксперементируем. Попробуй сменить Header("Content-Disposition: inline; filename=$file"); на Header("Content-Disposition: inline"); и посмотри результат в ИЕ.
 

demmi

Guest
При испольвовании Header("Content-Disposition: inline");
как и без этого хидера - пустой экран, но только на pdf- файлах, всякие там доки и яксели нормально.
 

Mammoth

Guest
Посмотри, что там у тебя прописано на тип файла .pdf
 

Mammoth

Guest
... или просто напиши в командной строке start <имя_файла.pdf>
 

demmi

Guest
опять же говорю в опере и мазилле работает номально, только траблы в IE в реестре все майм тайпы прописаны правильно
 

tony2001

TeaM PHPClub
в Ридере есть настройка - интеграция чего-то там с браузером.
к РНР никакого отношения это все не имеет.
 

Voxus

founder (Старожил PHPCluba)
...а мне все-таки интересно, когда в Inline заковычат имя файла и попробуют. :)
 

demmi

Guest
заковычивал пробовал - однозначно не работает...
 

demmi

Guest
В ридере как вы знаете по дефалту все галочки стоят там я смотрел, стоят они и у меня но вот почему ИЕ игнорирует
хидер на PDF-ах
@Header("Content-Disposition: inline; filename=$file");
сохраняя файл по имени скрипта для меня загадка...
 

Mammoth

Guest
...а мне все-таки интересно, когда в Inline заковычат имя файла и попробуют.
А всем бы было интересно, если бы все читали мануалы.

но вот почему ИЕ игнорирует хидер на PDF-ах
Скорее всего, потому что в винде не прописано действие для данного типа файлов (application/pdf).
 

Miky

Guest
Не знаю поможет, или нет. Как-то делал download, возник какой-то вопрос решил посмотреть в PHPMyAdmin-e, как там реализовано (нужно было сделать что-то подобное) и наткнулся на такой кусок кода:

PHP:
// Send headers
header('Content-Type: ' . $mime_type);
header('Expires: ' . $now);
// lem9 & loic1: IE need specific headers
if (PMA_USR_BROWSER_AGENT == 'IE') {
	header('Content-Disposition: inline; filename="' . $filename . '.' . $ext . '"');
	header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
	header('Pragma: public');
} else {
	header('Content-Disposition: attachment; filename="' . $filename . '.' . $ext . '"');
	header('Pragma: no-cache');
}
 

Ямерт

The Old One
> @Header("Content-Disposition: inline; filename=$file");

Вопрос: зачем перед функцией стоит собака? Чтобы давить сообщение "headers already sent" - я угадал?
 
Сверху