PHP输出文件下载时的奇怪问题

PHP输出文件下载时的奇怪问题

在输出文件的那个脚本里,如果加一个数据库的UPDATE操作,那么文件输出为空。但是查看文件属性时,发现下载下来的这个文件大小为3字节。
去掉header("Content-Disposition:attachment;filename=$filename.txt")进行检查,发现屏幕输出正常。
如果把UPDATE操作改成SELECT操作,那么,文件输出也正常了。
一开始以为是UPDATE操作会自动输出某些字符,于是把该操作放在header之后执行,问题依旧。
有谁遇到过这么奇怪的问题没?帮助解决下。

部分代码如下:
header("Content-Disposition:attachment;filename=$filename.txt");
echo $OutPutText;
$query="UPDATE `$mvm_order_info` SET status=11
WHERE uid in ($uids) AND supermarket='$_SESSION[SUPERMARKET_NAME]' AND status=3";
$db->query($query);


PS:刚到这里,没分给,不好意思!
没人回贴,自己回:
经查,是因为开启了输出缓存,然后,update的操作里更改的status正好也是select里所需的条件。
不更新status就不会出现这个问题了。
只有一种解释:就是如果开启了输出缓存,那么,数据库的操作只有在缓存释放时才执行。并且,更新操作优先于查询操作。