马上注册,免费下载更多dz插件网资源。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
版本 dx 3.3
估计3.4一样有这个问题,ie内核的浏览器下在上传后,缩略图都是显示xx。
这个问题主要还是https下,对图片输出的时候 不能使用- dheader('Content-Type: image');
复制代码
必须要明确到jpeg,png这里。
在forum_image.php文件里59行左右
需要改为- dheader('Content-Type: image/jpeg');
复制代码 当然这个并不完美- if($img->Thumb($filename, $thumbfile, $w, $h, $type)) { if($nocache) { dheader('Content-Type: image/jpeg'); @readfile($_G['setting']['attachdir'].$thumbfile);
复制代码
这样会让png的图片无法显示出来。
可以增加一个函数,来获取mime类型。
- function get_image_extension($image){ $extension = pathinfo($filename,PATHINFO_EXTENSION); if(in_array($extension,['jpg','jpeg','png','gif','bmp'])){ return 'image/'.$extension; } return 'image';}
复制代码 然后再去修改这个文件里输出的头部。
才可以彻底解决这个问题。
php 5.3之后可以使用
- function get_image_extension($filename){ $finfo = finfo_open(FILEINFO_MIME_TYPE); $rs = ''; if (!$finfo) { return 'image'; } $rs = finfo_file($finfo, $filename); finfo_close($finfo); return $rs;}
复制代码- <?php/** * [Discuz!] (C)2001-2099 Comsenz Inc. * This is NOT a freeware, use is subject to license terms * * $Id: forum_image.php 32531 2013-02-06 10:15:19Z zhangguosheng $ */if(!defined('IN_DISCUZ') || empty($_GET['aid']) || empty($_GET['size']) || empty($_GET['key'])) { header('location: '.$_G['siteurl'].'static/image/common/none.gif'); exit;}$nocache = !empty($_GET['nocache']) ? 1 : 0;$daid = intval($_GET['aid']);$type = !empty($_GET['type']) ? $_GET['type'] : 'fixwr';list($w, $h) = explode('x', $_GET['size']);$dw = intval($w);$dh = intval($h);$thumbfile = 'image/'.helper_attach::makethumbpath($daid, $dw, $dh);$attachurl = helper_attach::attachpreurl();function get_image_extension($filename){ $finfo = finfo_open(FILEINFO_MIME_TYPE); $rs = ''; if (!$finfo) { return 'image'; } $rs = finfo_file($finfo, $filename); finfo_close($finfo); return $rs;}if(!$nocache) { if(file_exists($_G['setting']['attachdir'].$thumbfile)) { dheader('location: '.$attachurl.$thumbfile); }}define('NOROBOT', TRUE);$id = !empty($_GET['atid']) ? $_GET['atid'] : $daid;if(dsign($id.'|'.$dw.'|'.$dh) != $_GET['key']) { dheader('location: '.$_G['siteurl'].'static/image/common/none.gif');}if($attach = C::t('forum_attachment_n')->fetch('aid:'.$daid, $daid, array(1, -1))) { if(!$dw && !$dh && $attach['tid'] != $id) { dheader('location: '.$_G['siteurl'].'static/image/common/none.gif'); } dheader('Expires: '.gmdate('D, d M Y H:i:s', TIMESTAMP + 3600).' GMT'); if($attach['remote']) { $filename = $_G['setting']['ftp']['attachurl'].'forum/'.$attach['attachment']; dheader('Content-Type: image'); dheader('location: '.$_G['setting']['ftp']['attachurl'].'forum/'.$attach['attachment'].'?imageView2/1/w/'.$dw.'/h/'.$dh.'/format/jpg/interlace/0/q/80'); } else { $filename = $_G['setting']['attachdir'].'forum/'.$attach['attachment']; } require_once libfile('class/image'); $img = new image; if($img->Thumb($filename, $thumbfile, $w, $h, $type)) { if($nocache) { $mine = get_image_extension($_G['setting']['attachdir'].$thumbfile); dheader('Content-Type: '.$mine); @readfile($_G['setting']['attachdir'].$thumbfile); //echo file_get_contents($_G['setting']['attachdir'].$thumbfile); @unlink($_G['setting']['attachdir'].$thumbfile); } else { dheader('location: '.$attachurl.$thumbfile); } } else { dheader('Content-Type: image'); @readfile($filename); }}?>
复制代码
©DZ插件网所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。 网站部分内容来源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,得到更好的正版服务。 您在本站任何的赞助购买、下载、查阅、回复等行为等均表示接受并同意签订《DZ插件网免责声明协议》。 如有侵权请邮件与我们联系处理: discuzaddons@vip.qq.com 并出示相关证明以便删除。敬请谅解!
|
|