详情页

帝国CMS标题图片如何实现无后缀远程图片下载保存到本地服务器

时间:2024年03月06日

编辑:佚名

昨天写了帮朋友调式网址导航站,需求二就是通过网址url一键获取网站截图,经过朋友推荐,目前有两个网站缩略图生成器接口可用,那么就简单的调试一下,
经过测试发现帝国cms图片无法上传无后缀域名的图片,在帝国论坛、谷歌、百度等搜索引擎都搜索了一遍,发现网上的教程在帝国cms7.5都无效,
但是发现一篇:帝国CMS标题图片实现远程图片下载,测试发现可用。
那么简单分享一下这篇教程
一、userfun.php增加字段处理函数
将以下函数插入到 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'];
}
二、修改 titlepic字段
在“后台增加信息处理函数”处添加: f_picurl ,然后修改“输入表单替换html代码”成以下代码:
手动上传:<input name="titlepic" type="text" id="titlepic" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[titlepic]))?>" size="45">
<a οnclick="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>
<br>
远程下载:<input name="picurl" type="text" id="picurl" size="45">
到这一步,测试无.png/.jpg等后缀链接实现标题图片远程图片下载到服务器。
相关文章
猜你需要