帝国cms结合项多选下拉 帝国CMS二次开发标题图片实现远程图片下载

帝国CMS教程

帝国cms的标题图片都是需要手动上传的,常常需要到别的网站下载图片,然后再上传。

本教程就可以实现直接填写远程图片地址,系统会自动下载保存图片。

第一步:添加字段处理函数

将以下函数插入到 e/class/userfun.php 文件中

functionf_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代码”成以下代码:

手动上传:<inputname="titlepic"type="text"id="titlepic"value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[titlepic]))?>"size="45"><aonclick="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="选择已上传的图片"><imgsrc="../data/images/changeimg.gif"border="0"align="absbottom"></a><br>远程下载:<inputname="picurl"type="text"id="picurl"size="45">

说明:以上方法收集于网络,本人没有测试,请自行测试。