·设为首页收藏本站📧邮箱修改🎁免费下载专区🔐设置/修改密码👽群雄群聊
返回列表 发布新帖

解决https下IE上传图片不显示问题

149 2
发表于 2022-11-24 23:33:30 | 显示全部楼层 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
版本 dx 3.3

估计3.4一样有这个问题,ie内核的浏览器下在上传后,缩略图都是显示xx。

这个问题主要还是https下,对图片输出的时候 不能使用
  1. dheader('Content-Type: image');
复制代码

必须要明确到jpeg,png这里。

在forum_image.php文件里59行左右
需要改为
  1. dheader('Content-Type: image/jpeg');
复制代码
当然这个并不完美
  1. if($img->Thumb($filename, $thumbfile, $w, $h, $type)) {                if($nocache) {                        dheader('Content-Type: image/jpeg');                        @readfile($_G['setting']['attachdir'].$thumbfile);
复制代码

这样会让png的图片无法显示出来。

可以增加一个函数,来获取mime类型。
  1. 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之后可以使用
  1. 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;}
复制代码
  1. <?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);        }}?>
复制代码
我要说一句 收起回复
一花一世界,一叶一追寻。一曲一场叹,一生为一人。

评论2

CrystαlLv.8 发表于 2022-11-24 23:34:07 | 显示全部楼层
:lol感谢分享 干货!!
我要说一句 收起回复
IT618发布Lv.8 发表于 2022-11-24 23:34:50 | 显示全部楼层
感谢分享。。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图

您的IP:18.191.13.255,113.219.142.60,GMT+8, 2024-4-27 12:08 , Processed in 0.184844 second(s), 89 queries , Gzip On, Redis On.

Based on Discuz! W1.0 Licensed

© 2001-2024 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表