帝国cms标题图片远程下载保存到服务器

在改造导航站的时候,网站虽然都是精选手工编辑上传,但是网站图标是使用一为大神的根据url获取网站图标的api接口调用,但是为了避免大神关站停用api接口,所以还是选择把调用的图标远程保存到服务器再调用,那么如何实现这一功能呢

在帝国论坛我找到了相关的解决方案

1、e/class/userfun.php添加字段处理函数

 function f_picurl($mid,$f,$isadd,$isq,$value,$cs){
        global $empire,$dbtbpre,$public_r;
        if($value){
                return $value;
        }
        $picurl=$_POST['picurl'];
        $classid=(int)$_POST['classid'];
        if(empty($picurl)||!$classid){
                return $value;
        }
        $r=DoTranUrl($picurl,$classid);
        if(empty($r['tran'])){
                return $value;
        }
        $r['filesize']=(int)$r['filesize'];
        $filepass=(int)$_POST['filepass'];
        $username='picurl';
        $sql=eInsertFileTable($r['filename'],$r['filesize'],$r['filepath'],$username,$classid,$r['filename'],1,$filepass,$filepass,$public_r['fpath'],0,$modtype,$fstb);
        return $r['url'];
}

2、修改 titlepic 字段

手动上传:<input name="titlepic" type="text" id="titlepic" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[titlepic]))?>" size="45">
<a onclick="window.open('ecmseditor/FileMain.php?type=1&classid=<?=$classid?>&infoid=<?=$id?>&filepass=<?=$filepass?>&sinfo=1&doing=1&field=titlepic<?=$ecms_hashur[ehref]?>','','width=700,height=550,scrollbars=yes');" title="选择已上传的图片"><img src="../data/images/changeimg.gif" border="0" align="absbottom"></a>
<br>
远程下载:<input name="picurl" type="text" id="picurl" size="45">

3、修改newstext字段,把远程图片改成如下,就默认开启原创保存图片

<input name="copyimg" type="checkbox" id="copyimg" value="1" checked>
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索