帝国cms编缉器替换ueditor编缉器 第一步

 D:\EmpireServer\web\e\data\ecmseditor\infoeditor

 D:\EmpireServer\web\e\data\ecmseditor\infoeditor\epage


 

 后台增加新闻时的界面

 查看源代码如上图

 

 
   


         
           
         
         
           
   
         
       

              关键字替换  
      远程保存图片(
     
      加水印)  
     
      远程保存FLASH(地址前缀:
     
              )
图片链接转为下一页   自动分页
      ,每
     
      个字节为一页   取第
     
      张上传图为标题图片(
     
      缩略图: 宽
     
      *高
     
      )


 

修改字段,newstext
 
   
 
 
   
 
在输入表单替换html代码中,会看到
 
   
 
   



         

           

         

         

           
   

         

       
>
              关键字替换  
      远程保存图片(
     
      加水印)  
     
      远程保存FLASH(地址前缀:
     
              )
图片链接转为下一页   自动分页
      ,每
     
      个字节为一页   取第
     
      张上传图为标题图片(
     
      缩略图: 宽
     
      *高
     
      )


在输出时自夸替换为
 
   
 
   

表格的那段基本未变,只是用了一些配置用的变量。

投稿表单替换html代码
 
   


所以,要找到上面两处红色代码对应的函数进行查看,才能进一步理解内部是如何进行替换的。
另外,查看表单的提交目标:
 
   
 
   



找到http://localhost/e/admin/ecmsinfo.php
 
   
 
 
   
 
   

if($enews=="AddNews")//增加信息
{
 $navtheid=(int)$_POST['filepass'];
 AddNews($_POST,$logininid,$loginin);
}
elseif($enews=="EditNews")//修改信息
{
 $navtheid=(int)$_POST['id'];
 EditNews($_POST,$logininid,$loginin);
}


require("../class/hinfofun.php");//即D:\EmpireServer\web\e\class\hinfofun.php
 
   
 
   

//增加信息
function AddNews($add,$userid,$username){


 
   

//修改信息
function EditNews($add,$userid,$username){


因为newstext为新增字段,所以在AddNews中看不到此newstext明文,实际是在此处处理的
 
   
 
   

$ret_r=ReturnAddF($add,$class_r[$add[classid]][modid],$userid,$username,0,0,1);//返回自定义字段


 
   
 
   

 //主表
 $infosql=$empire->query("insert into ".$infotbr['tbname']."(id,classid,ttid,onclick,plnum,totaldown,newspath,filename,userid,username,firsttitle,isgood,ispic,istop,isqf,ismember,isurl,truetime,lastdotime,havehtml,groupid,userfen,titlefont,titleurl,stb,fstb,restb,keyboard".$ret_r['fields'].") values('$id','$add[classid]','$add[ttid]','$add[onclick]',0,'$add[totaldown]','$newspath','$filename','$userid','".addslashes($username)."','$add[firsttitle]','$add[isgood]','$add[ispic]','$add[istop]','$isqf',0,'$add[isurl]','$truetime','$lastdotime','$havehtml','$add[groupid]','$add[userfen]','".addslashes($add[my_titlefont])."','".addslashes($add[titleurl])."','$ret_r[tb]','$public_r[filedeftb]','$public_r[pldeftb]','".addslashes($add[keyboard])."'".$ret_r['values'].");");
 //副表
 $finfosql=$empire->query("insert into ".$infotbr['datatbname']."(id,classid,keyid,dokey,newstempid,closepl,haveaddfen,infotags".$ret_r['datafields'].") values('$id','$add[classid]','$keyid','$add[dokey]','$add[newstempid]','$add[closepl]',0,'".addslashes($add[infotags])."'".$ret_r['datavalues'].");");


$ret_r['datafields']是自定义字段,是用逗号分隔的字段名
$ret_r['datavalues']应该就是用逗号分隔的表单提交的值
 
中间应该可能会有一项对应newstext和$newstext/ _POST['newstext']
 
D:\EmpireServer\web\e\class\functions.php中
 
   
 
   

//返回自定义字段
function ReturnAddF($add,$modid,$userid,$username,$do=0,$rdata=0,$ch=0){



 ECMS_ShowEditorVar的位置:
D:\EmpireServer\web\e\data\ecmseditor\infoeditor\fckeditor.php
 
   

//变量名,变量值,工具条模式,编辑器目录,高度,宽度
function ECMS_ShowEditorVar($varname,$varvalue,$toolbar='Default',$basepath='',$height='300',$width='100%'){
 if(empty($basepath))
 {
  $basepath='../data/ecmseditor/infoeditor/';
 }
 if(empty($height))
 {
  $height='300';
 }
 if(empty($width))
 {
  $width='100%';
 }
 //设置区域
 $oFCKeditor=new FCKeditor($varname);
 $oFCKeditor->BasePath=$basepath;
 $oFCKeditor->Value=$varvalue;
 $oFCKeditor->Height=$height;
 $oFCKeditor->Width=$width;
 $oFCKeditor->ToolbarSet=$toolbar;
 //区域的模板变量
 $area=$oFCKeditor->CreateHtml();
 return $area;
}

这个函数是如何生成如下代码 
 
   
 
   


 
   


变量名,变量值,工具条模式,编辑器目录,高度,宽度



你可能感兴趣的:(帝国cms编缉器替换ueditor编缉器 第一步)