PHP世纪论坛

 找回密码
 立即注册
搜索
查看: 531|回复: 1

织梦图集上传照片错误

[复制链接]

3

主题

3

帖子

42

积分

新手上路

Rank: 1

积分
42
发表于 2016-3-11 22:06:55 | 显示全部楼层 |阅读模式
1铜币
})2E(_@U4C[%9WHC_36~_OS.png

回复

使用道具 举报

234

主题

240

帖子

1077

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1077
发表于 2016-3-11 22:48:08 | 显示全部楼层
以下来源于:http://my.oschina.net/54programmer/blog/161252

之前用dedecms做的一个项目,编码为utf8,在用swfupload上传图片时正常。后来因为各种原因,将utf8转为gbk,但 是在上传图片时总是报错,弹出框显示FILEID:X,百度谷歌找了一通也没有找到,调试了半天也没有成功。弄了一下午无语了,因为代码都正确,就是不出结果,后来把一个PHP高手叫过来一起解决。后来总结:

报错的图片位置:
13204846_xt5Z.png

朋友在看了一会,用的浏览器是Google Chrome浏览器,因为此浏览器可以进行调试,高度代码及图片如下:
13204846_euD7.png

因为在输出的过程中,出现了三个回车,问题就在这里。于是乎在输出的过程中将其清除则可以,因为具体位置也不好找,所以就用了PHP自带的一个函数将其清除,具体如下:
  1. 在/dede/swfupload.php的
  2. echo "FILEID:".$_SESSION['fileid'];
  3. 的上边加一句
  4. ob_end_clean();
复制代码


这回能上传了,但上传后图片依然输不出来,于是在chrome的指引下,还多出几个回车,于是这的上边加一句,在
  1. header('Content-type: image/jpeg');  
  2. header('Content-Length: '.strlen($_SESSION['file_info'][$id]));
  3. 的上边加一句
  4. ob_end_clean();
复制代码


这回终于可以输出了!看来ob_end_clean(); 函数的作用很大啊!


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|PHP世纪论坛 ( 豫ICP备15004666号-2 )

GMT+8, 2018-7-22 07:01

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表