帝国cms后台标题图片实现远程下载

帝国CMS的标题图片都是需要手动上传的,常常需要到别的网站下载图片,然后再上传。
本教程就可以实现直接填写远程图片地址,系统会下载保存图片。
第一步:添加字段处理函数
将以下函数插入到 e/class/userfun.php 文件中
  1. function f_picurl($mid,$f,$isadd,$isq,$value,$cs){
  2.     global $empire,$dbtbpre,$public_r;
  3.     if($value){
  4.         return $value;
  5.     }
  6.     $picurl=$_POST['picurl'];
  7.     $classid=(int)$_POST['classid'];
  8.     if(empty($picurl)||!$classid){
  9.         return $value;
  10.     }
  11.     $r=DoTranUrl($picurl,$classid);
  12.     if(empty($r['tran'])){
  13.         return $value;
  14.     }
  15.     $r['filesize']=(int)$r['filesize'];
  16.     $filepass=(int)$_POST['filepass'];
  17.     $username='picurl';
  18.     $sql=eInsertFileTable($r['filename'],$r['filesize'],$r['filepath'],$username,$classid,$r['filename'],1,$filepass,$filepass,$public_r['fpath'],0,$modtype,$fstb);
  19.     return $r['url'];
  20. }
复制代码
第二步:修改 titlepic 字段
在“后台增加信息处理函数”处填上 f_picurl ,然后修改“输入表单替换html代码”成以下代码:

  1. 手动上传:<input name="titlepic" type="text" id="titlepic" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[titlepic]))?>" size="45">
  2. <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>
  3. <br>
  4. 远程下载:<input name="picurl" type="text" id="picurl" size="45">
复制代码






上一篇:帝国cms万能标签调用当前栏目先下的日周月排行
下一篇:帝国cms前台页面增加显示访客省份功能
如无回复请发邮件