2013-02-22 4 views
0

Когда я использую следующие заголовки, IE7 показывает мне содержимое файла, а не подсказку загрузки. Я искал al over google, но не нашел расширения.Readfile отображает содержимое

header('Content-Description: File Transfer'); 
header('Content-Type: application/force-download'); 
header('Content-Disposition: attachment; filename=\"Copy van '.basename($file).'\"'); 
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)); 
ob_clean(); 
flush(); 
readfile($file); 
exit; 
+0

ли заголовки на самом деле работают? Проверьте с помощью 'wget -S' или' curl' – mario

+0

Не проверял. Но можете ли вы дать еще несколько объяснений о 'wget'? Никогда не слышал раньше ... –

+0

Headers not send :( –

ответ

1

Если вы хотите отправить заголовки, убедитесь, что они являются первым выходом вашего скрипта.

это не будет работать:

<html> //==>output buffer 
echo ... //==>output buffer 
<?php header(...) ?> 

это работает:

<?php 
session_start(); 
$some_variable=$_POST[]; 
$k="2"; 
//until here, nothing is send to the output buffer 
header(...); 
?> 
<html> 
Смежные вопросы