专注于WEB技术的IT博客

phpcms v9二次开发之表单类form.class.php的应用

时间:2012-11-21分类: Phpcms浏览:12047
分享到:

phpcms v9的系统类库有一个表单类,它封装了表单的一些组件,如编辑器、图片上传、时间选择器、模板选择器等,更详细请参考form.class.php。有了这些组件,在对phpcms v9进行二次开发时,更加省时省心。我们要做的就是如何把这些工具调出来使用。调用方法总共有两种。


一、视图调用法
这种方法最简单,但有局限性。在后台的模型定义字段时,选择表单的类型就会生成相应的表单类型。


二、代码调用法
这种方法比较灵活,走出了内容模块的限制,不再拘泥于内容模型的框架。下面是一个足球模块控制器添加信息的方法,看代码:
表单类的位置:libs\classes--form.class.php


public function addfbteam(){ 
           $levels = $this->level->select('','`id`,`level`','','id'); 
          if(isset($_POST['dosubmit'])){ 
               $_POST['football'] = $this->check($_POST['football']); 
               if($this->db->insert($_POST['football'])) showmessage(L('operation_success'),'?m=football&c=admin_fbteam&a=fblists'); 
              }else{ 
                pc_base::load_sys_class('form', '', 0); 
                include $this->admin_tpl('fbteam_add'); 
              } 
       }

说明: 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', '&nbsp;', 'football')。



猜你喜欢
phpcms微信插件自定义菜单绑定栏目获取消息的实现与应用
phpcms微信插件自动回复的优化方法
基于phpcms v9开发的微信公众号平台管理模块终于完成
phpcms v9 rss页面的伪静态实现
如何实现phpcms v9_4X版本tag的伪静态?
phpcms v9.4.2_utf8整合百度ueditor1.2.6.1utf8-php
如何修改phpcms v9 seo标题分隔符?
关于Phpcms V9.4.2缩略图上传问题
如何对phpcms v9的首页列表进行分页?
phpcms v9二次开发之语言包
除非注明,本文首发网志博客,欢迎转载!转载请注明本文地址:http://w3note.com/web/49.html,谢谢。
  • 评论
  • 赞助本站