PHPCMS调用form类编辑器editor函数动态上传图片附件
http://w3note.com/web/49.html
phpcms v9的系统类库有一个表单类,它封装了表单的一些组件,如编辑器、图片上传、时间选择器、模板选 择器等,更详细请参考form.class.php。有了这些组件,在对phpcms v9进行二次开发时,更加省时省心。我们要做的就是如何把这些工具调出来使用。调用方法总共有两种。
一、视图调用法
这种方法最简单,但有局限性。在后台的模型定义字段时,选择表单的类型就会生成相应的表单类型。
二、代码调用法
这种方法比较灵活,走出了内容模块的限制,不再拘泥于内容模型的框架。下面是一个足球模块控制器添加信息的方法,看代码:
表单类的位置:libs\classes--form.class.php
01 public function addfbteam(){
02 $levels = $this->level->select('','`id`,`level`','','id');
03 if(isset($_POST['dosubmit'])){
04 $_POST['football'] = $this->check($_POST['football']);
05 if($this->db->insert($_POST['football'])) showmessage(L('operation_success'),'?m=football&c=admin_fbteam&a=fblists');
06 }else{
07 pc_base::load_sys_class('form', '', 0);
08 include $this->admin_tpl('fbteam_add');
09 }
10 }
说明: pc_base::load_sys_class(‘form’, ”, 0);加载表单类form.class.php,‘’空参数表示类文件的路径,加载的系统类库里面的类,参数“0”表示不实例化类。
上面方法对应的模板视图
<tr>
<th width="80"><strong><?php echo L('football_profile')?>:</strong></th>
<td><textarea name="football[profile]" id="profile"></textarea><?php echo form::editor('profile');?></td>
</tr>
说明:“form::editor('profile')”,上面加载表单类且不实例化的目的就是使用静态方法调用编辑器editor,里面的参数“profile”表示表单的ID。
这 里只说表单类编辑器的调用,其它的表单调用方法类似,不管调用什么表单,首先都要加载系统类库里的表单类,然后在模板调用表单类的表单方法,如时间表 单,form::date('football[formed]', date('Y-m-d'), 0),图片上传form::images('football[badge]', 'badge', ' ', 'football')。
PHPCMS调用form类编辑器editor函数动态上传图片附件的更多相关文章
- 关于MFC中重载函数是否调用基类相对应函数的问题
在重载CDialog的OnInitDialog()函数的时候,在首行会添加一句:CDialongEx::OnInitDialog();语句,这是为什么呢?什么时候添加,什么时候不添加? 实际上,我们在 ...
- C#调用c++类的导出函数
C# 需要调用C++东西,但是有不想做成COM,就只好先导出类中的函数处理. 不能直接调用,需单独导出函数 参考:http://blog.csdn.net/cartzhang/article/deta ...
- extends 类的继承 / super关键字,调用继承类里面的函数和变量
Son 继承Father 当其他脚本想调用 Father类里面的变量 or 方法 可以把 Son r=new Son() 等价于 Father r=new Father() 注意: 函数只能单继承 ...
- Delphi子类调用祖父类的虚函数
因为看Delphi书的时候,就产生了疑惑.老讲调用父类虚函数,但是万一需要调用祖父虚函数怎么办?后来又经常在C++里看到,就更疑惑了 type TA = class procedure ShowMsg ...
- thinkphp5使用Markdown编辑器Editor.md并上传图片
Editor.md官网:https://pandao.github.io/editor.md/index.html 下载后解压放到项目内,和引入ueditor差不多 1.引入项目资源 <!--m ...
- C#动态调用C++编写的DLL函数
C#动态调用C++编写的DLL函数 动态加载DLL需要使用Windows API函数:LoadLibrary.GetProcAddress以及FreeLibrary.我们可以使用DllImport在C ...
- 006.CI4框架CodeIgniter, 加载框架的helper辅助类,调用helper类中的各种函数
01. CI4框架作为一个很成熟的框架,给我们提供了很多helper辅助类,我们在代码中可以很方便的使用,如下所示,我们在Controllers中调用Cookies类的set_cookie函数 < ...
- 在类的外面调用类的private函数
将基类中的虚函数定义为public,在派生类中将该虚函数定义为private,则可以通过基类指针调用派生类的private函数 #include <iostream> #include & ...
- C++ - 虚基类、虚函数与纯虚函数
虚基类 在说明其作用前先看一段代码 class A{public: int iValue;}; class B:public A{public: void bPrintf(){ ...
随机推荐
- Linux Basic --- The First Character in The File Properity
-rw-r--r-- [d]: content [-]: file [l]: link file [b]: interface device for storage in a device file ...
- Apache Nutch v2.3 发布,Java实现的网络爬虫
http://www.oschina.net/news/59287/apache-nutch-2-3 Apache Nutch v2.3已经发布了,建议所有使用2.X系列的用户和开发人员升级到这个版本 ...
- [中英双语] 数学缩写列表 (List of mathematical abbreviations)
List of mathematical abbreviations From Wikipedia, the free encyclopedia 数学缩写列表 维基百科,自由的百科全书 This ar ...
- HashMap与ArrayList互相嵌套的代码实现
HashMap嵌套ArrayList的代码实现 结果要求为 三国演义 吕布 周瑜笑傲江湖 令狐冲 林平之神雕侠侣 ...
- 才知道创建数据表的后面int(M)的m居然和存储大小没有关系
之前一直以为,后面m代表有几个字节 MySQL 数据类型中的 integer types 有点奇怪.你可能会见到诸如:int(3).int(4).int(8) 之类的 int 数据类型.刚接触 MyS ...
- ntp服务器搭建与客户端设置
服务器对时间要求非常严格,linux服务器文件的生成,日志,以及数据库的连接都是根据时间的逻辑 进行任务处理,如果时间不同步,那么,处理的任务,以及出问题的分析日志,时间不对,很难分析 直接更改lin ...
- this.name=name;和this.setName(name);的区别
其实一般属性设置为private后,才会写属性的set和get方法 在本类中可以用 this.name=name 但是,在其他类中药给name赋值,就只能用set了
- jQuery学习笔记——弹出对话框
引用jQuery库文件的<script>标签,必须放在引用自定义脚本文件的<script>标签之前.否则,在编写的代码中将不能引用到jQuery框架 <script ty ...
- ast模块
有这么一个需求,你想从文件中读取字典,方法有很多,这里用的是ast模块 import ast with open("account","r",encoding= ...
- Java学习之Hessian通信基础
一.首先先说Hessian是什么? Hessian:hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能,相比WebService,Hessian更简 ...