2013-10-10 43 views
-1

我已經使用一個代碼來創建zip文件形式的用戶選中的複選框文件。我收到以下錯誤信息:!?zip文件下載顯示錯誤符號...使用php代碼

PK玉•1408米[CONTENT_TYPES] .XML¢('TËnÂ0¼WêD¾V‰¡‡ªªú8¶H¥ì XõKöòúûnDUA*å)YïÌììăÑÚšl 1iïJÖ/z,'½ÒnV²ÉK~ϲ„Â)a¼ƒ’m ±Ñðúj0ÙHu»T²9bxà<É9X‘ ÀQ¥òÑ ¤×8ãAÈO1~ÛëÝqé‚Ãk6$N{9›êÍ+P9Y ¢†vuÇGD²ìÃï»ÆoR€」wàͳ¶ ÌIÊŠ~‰‰˜8›ïWòZè「"V0}¿˜ûßÀ»„´ù「>þÁŒýuQwHoî·áÿÿPK!‘·óN_rels/.rels ¢( Œ’ÛJA†ïßaÈ}7Û "ÒÙÞH¡w"ë„™ìw̤ھ½£ ºPÛ^æôçËOÖ›ƒ›Ô;§<¯aYÕ Ø›Gßkxm·<保華建業[š,gGI°伊野尾/ < 「」¡< OE1«¢A 3†甲$>「F3°£\ ...ȾTºIS'ÌõŒ«º¾ÇôWš™|ÚY IGI @μÇX6_Ö] 7〜fïØˉÈaoÙ.b*lIÆrj)O,l0Ï%'b¬ 6AI¢ÕõDÿ_ !ÿÿPKÖd³Qú1word/ RELS/document.xml.rels ¢(¬'ÍjÃ0„ 我......¾ƒØ{ - 「ȹ」@®ûŠ½þ¡²$'>¶〜û〜 CR‡ââ<Fhæ「´›íwoÄ'êœU%)´¥«:Û(x/vwÏ ˆµ­´qH°Íoo6¯h4ÇCÔvžDL±¤ eök)©l±×」86îÔ.ôš£ôºüÐ ÊUš>É0Í€ü"Sì+a_݃(›ÿÏvuÝ•øâÊc–¯TÈ/<¼!s¼ÅXd3‰´ ¯ƒ¬–¡?'g![?óü4ê¹úÇ%ë9Žþ¶RŽk6Çð°$Cí,ú &gë!/ =ÿÿÿPK!æ「KxîQword/ docum ent.xml-TÛnÛ0}°0ôžò²'5â²î[email protected]Ñv Ȳ-L‰Ž-}ý('EE < /’É#žC‘」7·?NÒ¶

øéÐYV£ë‰DE]/IOV}®®〜úEhGm¹\ NSEO†¾?^ÓwÏéêo$ùãûÿ©«×IC!)歐^ÍrÍC$ñ[email protected]「°íÝö/ yH *œ~ñ」'½)'Þμ÷»»×UDb,}"×qÛ‹」J×—–¤ÃX^æ)InÌEŠŠŠŠ)øèÆli¹V[]Š1M<「àÈÞ©OÐP」ô6râ'‰'zÀgb Ig ...ÁuSÙ

這裏是我的代碼:

header("Content-Description: File Transfer"); 
header("Content-type: application/zip"); 
header("Content-Type: application/force-download");// some browsers need this header("Content-Disposition: attachment; 
filename=$archive_file_name"); 
header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-Length:". " $zipped_size"); 
ob_clean(); flush(); 
readfile("$archive_file_name"); 
unlink("$archive_file_name"); 

回答

1

這是不是一個錯誤信息,這是呈現爲文本的zip文件。

假設您在生成zip文件後,將其發送給瀏覽器並顯示錯誤的Content-Type。可能你沒有設置Content-Type,所以PHP默認爲text/html

然後瀏覽器得到的東西是HTML,因此它會嘗試將其呈現爲網頁。

設置正確的內容類型的程序:

header("Content-Type: application/zip"); 
+0

謝謝您的答覆。我已經使用了下面的內容類型頭(「Content-Description:File Transfer」); header(「Content-type:application/zip」); header(「Content-Type:application/force-download」); //一些瀏覽器需要這個頭文件(「Content-Disposition:attachment; filename = $ archive_file_name」); header('Expires:0'); header('Cache-Control:must-revalidate,post-check = 0,pre-check = 0'); header('Pragma:public'); header(「Content-Length:」。「$ zipped_size」); ob_clean(); flush(); readfile(「$ archive_file_name」); unlink(「$ archive_file_name」); – CDSUSER