DedeCMS图集上传图片出现FILEID:X报错终极解决方法

作者在搭建一个DEDECMS资讯站的时候遇到了一个问题,在图集上传图片时总是弹出FILEID:X(X为数字)的错误,然后上面的所谓图就变成了红色。

1HQH249-0.jpg

 

查看附件发现其实刚才的图片已经上传成功了。想着从网上搜一下现成的的解决方法,果然很多网站都有这个解决方法,心想这下可以解决问题了

QQ截图20170522153436.png

大致都是说只有UTF-8编码的才会有问题。

试了第一个发现不能用,按照那个方法处理完还是会出现那个问题。再打开下面的哪些链接,发现居然都是转载的同一个文章,作者瞬间凌乱了。这种不能解决问题的方法为何大家争相转载呢?作者继续找,终于找到了。

具体方法如下:

在/dede/swfupload.php的

echo "FILEID:".$_SESSION['fileid'];
的上边加一句
ob_end_clean();

这回能上传了,但上传后图片依然输不出来,于是在chrome的指引下,还多出几个回车,于是这的上边加一句,在
header('Content-type: image/jpeg'); 
header('Content-Length: '.strlen($_SESSION['file_info'][$id]));
的上边加一句
ob_end_clean();
这回终于可以输出了!看来ob_end_clean(); 函数的作用很大啊!

这个方法作者亲自测试了,绝对好用!