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之前,如:



微笑至此,整个下载功能全部完工。


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