最近在用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之前,如:
至此,整个下载功能全部完工。
本文介绍了使用PHP进行文件下载过程中遇到的问题及解决方案,包括解决参数错误导致的下载失败,以及如何通过添加ob_clean()和flush()来修复下载文件中出现的乱码和空白字符等问题。
1290

被折叠的 条评论
为什么被折叠?



