2009-10-23 137 views
0

我有一個腳本,可以讓用戶下載文件(做一個BIN2HEX後存儲在BLOB字段())腳本不終止立即

 
function hex2bin($h){ ... } 
// code to get $filecontent,$filesize,$uploadname from database 
header('Content-Description: File Transfer'); 
header('Content-Type: application/octet-stream'); 
header("Content-Length: $filesize"); 
header('Content-Disposition: attachment; filename="'.$uploadname.'"'); 
echo hex2bin($filecontent); 

一切工作正常,除了瀏覽器正在3到 下載文件後最後終止http會話。

任何線索是什麼造成的。

謝謝。 Pari

+0

你可以檢查內容長度是否正確出來 – Greg 2009-10-23 08:45:30

+0

您是否嘗試過發送Connection:close header? – svens 2009-10-23 08:51:26

+0

感謝格雷格和斯文斯 事實證明,我正在做一個ob_start(「ob_gzhandler」)在一個包含文件,這是造成延遲。 我把它關掉了,現在下載腳本工作正常。 感謝幫助的人。 – Pari 2009-10-23 09:09:02

回答

0

可能是「從數據庫中獲取$ filecontent,$ filesize,$ uploadname」的代碼是問題所在。顯示它

1

原來在其中一個包含文件中存在ob_start(「ob_gzhandler」) 。刪除它解決了這個問題。

謝謝大家。 Pari