php下載文件錯誤,文件損壞,編碼錯誤,有空格

        最近在用php做文件下載,出現了很多問題,勞神傷力,弄了很久終於解決了,於是乎記之。

       剛開始時下載錯誤抓狂,弄了半天發現參數錯誤。

$uid=intval($_SESSION[id]);
$id=verify_id($_GET[id]);
老是報錯,然後就修改,當改成
$uid=intval($_SESSION['id']);
$id=verify_id($_GET['id']);
就可以了,但隨之新的問題又來了發火,文件能下載了,可下載的文件有問題,word文檔是亂碼尷尬,txt文件前有空格驚恐,源文件沒有空格的。


                                                                                            word文檔亂碼

  

                          txt文件有空格


  於是又找啊找,研究了半天,終於解決了

解決辦法:在header標籤處加

ob_clean();  
flush();
加了後,txt文檔空格沒有了,word文檔亂碼問題,正常顯示了吐舌頭

ob_clean();  flush();所在的位置爲readfile之前,如:



微笑至此,整個下載功能全部完工。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章