帝国CMS功能解密之字段处理函数详解

作者 : 青柠哥 本文共3698个字,预计阅读时间需要10分钟 发布时间: 2023-06-16 共101人阅读

帝国CMS功能解密之字段处理函数详解

一.前言:

帝国CMS提供强大的用户自定义字段处理功能,极大的方便了用户对帝国CMS进行二次开发!

在添加/修改字段时,Imperial CMS可以在后台设置“添加信息处理功能”,在后台设置“修改信息处理功能”,在前台设置“添加信息处理功能”,在前台设置“修改信息处理功能”,可以分别设置处理字段内容的功能,多用于对字段内容存储格式有特殊要求的机型。今天,我们来简单解释一下处理函数的格式。现场处理功能的具体设置位置如下图所示:

pic.jpg

二、基本设置步骤:

1、编写一个处理函数;2.将函数复制到e/class/userfun.php文件的内容中;3.修改字段设置处理功能的名称。

三、字段处理功能格式:

代码如下:

函数user_FieldFun($mid,$f,$isadd,$isq,$value,$ cs){ return $ value;}

参数描述:

User_FieldFun:函数名$mid:系统型号ID$f:字段名$isadd:值为0时,添加信息;值1是修改信息$ isq值为0是后台处理;值为1时,为前台处理$value:字段的原始内容$cs:字段的附加参数,字段处理函数处设置的参数内容。

四、字段处理功能示例:

例1:标题前自动加“[EmpireCMS]”。后台字段函数设置:user_AddTitle。

代码如下:

函数user_AddTitle($mid,$f,$isadd,$isq,$value,$ cs){ $ value = & # 39;[empire CMS]& # 39;。$ value返回$ value}

示例2:标题内容由writer和befrom字段的组合背景字段函数设置:user_TogTitle标题字段显示HTML代码:

代码如下:

函数user_TogTitle($mid,$f,$isadd,$isq,$value,$ cs){ $ value = $ _ POST[& # 39;作家& # 39;].$ _ POST[& # 39;befrom & # 39];返回$ value}

例3:上传图片,自动生成缩略图。背景字段函数设置:user _ tranimguto # # 170,120(注:背景参数170表示缩略图宽度,120表示缩略图高度)。上传图片字段会显示一个HTML代码:< input type = & quot文件& quotname = & quottitlepicimgrs & quotsize = & quot45 & quot& gt(注意:变量名为“字段名”+imgrs,对应函数中的“$filetf”变量)。

代码如下:

函数user_TranImgAuto($mid,$f,$isadd,$isq,$value,$cs){global $empire,$dbtbpre,$public_r,$emod_r,$class_r,$tranpicturetype,$ musername$ filetf = $ f. & # 39imgrs & # 39;//变量名if(!$ _ FILES[$ filetf][& # 39;姓名& # 39;]){ return & # 39;';} $ classid =(int)$ _ POST[& # 39;classid & # 39];$ id =(int)$ _ POST[& # 39;id & # 39];$ file pass =(int)$ _ POST[& # 39;filepass & # 39];$ filetype = get filetype($ _ FILES[$ filetf][& # 39;姓名& # 39;]);$ pr = $ empire -& gt;fetch 1(& quot;从{ $ dbtbpre }电子新闻公共限制1 & quot中选择qaddtran,qaddtransize,qaddtranimgtype);如果(!$ pr[& # 39;qaddtran & # 39]){ printerror(& quot;CloseQTranPic & quot,& quot\”,1);}如果(!strstr($ pr[& # 39;qaddtranimgtype & # 39],& quot| & quot。$filetype。\”| & quot)){ printerror(& quot;NotQTranFiletype & quot,& quot\”,1);} if($ _ FILES[$ filetf][& # 39;尺寸& # 39;]& gt;$ pr[& # 39;qaddtransize & # 39]* 1024){ printerror(& quot;TooBigQTranFile & quot,& quot\”,1);}如果(!strstr($transpicturetype,& # 39;,'。$filetype。',')){ printerror(& quot;NotQTranFiletype & quot,& quot\”,1);} $ TFR = DoTranFile($ _ FILES[$ filetf][& # 39;tmp _ name & # 39],$ _ FILES[$ filetf][& # 39;姓名& # 39;],$ _ FILES[$ filetf][& # 39;类型& # 39;],$ _ FILES[$ filetf][& # 39;尺寸& # 39;],$ classid);if($ TFR[& # 39;特兰& # 39;]){ $ CSR = explode(& # 39;,',$ cs);$ maxwidth = $ CSR[0];$ max height = $ CSR[1];$ yname = $ TFR[& # 39;yname & # 39];$ name = $ TFR[& # 39;姓名& # 39;];包含一次(ECMS路径。'e/class/GD . PHP & # 39;);//Generate thumbnail $ filer = resize image($ yname,$ name,$ maxwidth,$ maxheight,$ public _ r[& # 39;斯皮基尔& # 39;]);DelFiletext($ yname);if($ filer[& # 39;文件& # 39;]){//写入数据库$ type = 1;$ file time = date(& quot;y-m-d H:I:s & quot;);$ filesize = @ filesize($ filer[& # 39;文件& # 39;]);$ filename = get filename(str _ replace(ECMS路径,& # 39;',$ filer[& # 39;文件& # 39;]));$ adduser = & # 39[会员]& # 39;。$ musername$infoid=$isadd==1?0:$ id;$ empire ->;查询(& quot插入到{$dbtbpre}enewsfile(文件名,文件大小,adduser,路径,文件时间,classid,no,类型,id,cjid,fpath)值(& # 39;$ filename & # 39,'$ filesize & # 39,'$ adduser & # 39,'$ TFR[文件路径]& # 39;,'$ filetime & # 39,'$ classid & # 39,'[& quot;。$ f. & quot]& quot;。add slashes(RepPostStr($ _ POST[title]))。\”','$ type & # 39,'$ infoid & # 39,'$ filepass & # 39,'$ public _ r[fpath]& # 39;);\”);if($ isadd = = 0){ $ TB name = $ emod _ r[$ mid][& # 39;tbname & # 39];if(str str($ emod _ r[$ mid][& # 39;tbdataf & # 39],','。$ f. & # 39,')){ $ IR = $ empire -& gt;fetch 1(& quot;从{ $ dbtbpre } ecms _ & quot中选择stb。$tbname。\”其中id = & # 39$ id & # 39\”);$ifr=$empire->fetch 1(& quot;选择& quot。$ f. & quot来自{ $ dbtbpre } ecms _ & quot。$tbname。\”_ data _ & quot。$ir[stb]。\”其中id = & # 39$ id & # 39\”);$ if val = $ IFR[$ f];} else { $ IR = $ empire -& gt;fetch 1(& quot;选择& quot。$ f. & quot来自{ $ dbtbpre } ecms _ & quot。$tbname。\”其中id = & # 39$ id & # 39\”);$ if val = $ IR[$ f];} if($ifval){ DelYQTranFile($ classid,$id,$ ifval,$ f);} } $ value = str _ replace($ TFR[& # 39;文件名& # 39;],$filename,$ TFR[& # 39;网址& # 39;]);} } else { $ value = & # 39';}返回$ value}

以上是帝国CMS函数解密的字段处理函数的详细说明。更多信息请关注php中文网其他相关文章!

青柠资源网专注于CMS网站模板,主流语言整站网站源码下载,网站建设相关教程分享,好用的软件素材整合下载,提供一站式便捷自助服务。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.qnziyw.cn",如遇到无法解压的请联系管理员!


青柠资源网 » 帝国CMS功能解密之字段处理函数详解

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍
提示下载完但解压或打开不了?
最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或 联络我们。
找不到素材资源介绍文章里的示例图片?
对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单

发表回复