专注于WEB技术的IT博客

phpcms v9二次开发之模型类的应用(1)

时间:2012-09-28分类: Phpcms浏览:6381
分享到:

 在《phpcms二次开发之模型类model.class.php》中讲到了模型类的建立方法,接下来我讲一下模型类的应用。
 前段时间我基于phpcms v9开发了一个足球网。足球网是由好几个模块组成的,如图:



我选其中一个比较简单的级别管理模块来说一下模型类的应用,为了明了我对其作了简化,但是功能保持完整,基本上包函了模型类的基本应用,如添加数据,修改数据、查询数据、删除数据。


一、模型操作方法insert()--添加数据


下面是级别模块的后台控制器level.php的代码片断:

<?php
defined('IN_PHPCMS') or exit('No permission resources.');
pc_base::load_app_class('admin', 'admin', 0);
pc_base::load_app_func('global');
class level extends admin {//继承后台管理类,所以就含有了权限控制
     private $level;
    public $username;
 //控制器的构造函数,加载初始化一些功能操作 ,如加载了level_model
   public function __construct() {
      
       $this->username = param::get_cookie('admin_username');
       $this->level = pc_base::load_model('level_model');//加载级别模型类level_model.class.php
          
       }
   //添加足球级别信息
   public function addlevel(){
      if(isset($_POST['dosubmit'])){//判断如果提交表单则执行下面的插入语句
         
       if($this->level->insert($_POST['football'])){
   showmessage(L('level_successful_added'),'?m=football&c=level&a=levellists');
}
}else{
  include $this->admin_tpl('level_add');//加载后台添加级别的模板
    }
}

insert()是插入数据的模型方法,$_POST['football']是提交过来的级别字段,它是一个数组,如图:

模板代码片断:

<form action="?m=football&c=admin_sl&a=addlevel" method="post" name="myform" id="myform" >
<table class="table_form" width="100%" cellspacing="0">
<tbody>
<tr>
<th width="80"><strong><?php echo L('level_name')?>:</strong></th>
<td><input type="text" name="football[level]" size="20" id="level" class="input-text"/></td>
</tr>
<tr>
<th width="80"><strong></strong></th>
<td><input type="submit" name="dosubmit" id="dosubmit" value=" <?php echo L('submit')?> ">&nbsp;<input type="reset" class="dialog" value=" <?php echo L('clear')?> "</td>
</tr>
</tbody>
</table>
</form>

上面的addlevel()方法如果转化为mysql语句为:

public function addlevel(){
    if(isset($_POST['dosubmit'])){
    $sql = "insert into `fb_level` (`level`) VALUES ('".football[level]."')";
    $result=$this->level->query($sql);
    if($result){
    showmessage(L('level_successful_added'),'?m=football&c=level&a=levellists');
    }
  
    }else{
    include $this->admin_tpl('level_add');
   }

 通过两个方法的对比我们知道,使用phpcms v9封装的方法insert()插入数据时更为简单方便。当然上面插入的字段只有一个,如果插入十几二十个字段的话,依然是$this->level->insert($_POST['football'])就搞定。如果用mysql语句的话,就显得繁琐不堪了。砍柴不误磨刀工,所以phpcms v9二次开发中,熟悉运用model.class.php数据库模型类的方法,能起到事半功倍的作用。(待续...)





猜你喜欢
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二次开发之表单类form.class.php的应用
标签 : phpcmsv9
除非注明,本文首发网志博客,欢迎转载!转载请注明本文地址:http://w3note.com/web/21.html,谢谢。
  • 评论
  • 赞助本站