phpcms v9二次开发之模型类的应用(1)
生活随笔
收集整理的这篇文章主要介绍了
phpcms v9二次开发之模型类的应用(1)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
在《phpcms二次开发之模型类model.class.php》中讲到了模型类的建立方法,接下来我讲一下模型类的应用。
前段时间我基于phpcms v9开发了一个足球网。足球网是由好几个模块组成的,如图:
view source print?
view source print?
insert()是插入数据的模型方法,$_post['football']是提交过来的级别字段,它是一个数组,如图:
上面的addlevel()方法如果转化为mysql语句为: view source print?
前段时间我基于phpcms v9开发了一个足球网。足球网是由好几个模块组成的,如图:
我选其中一个比较简单的级别管理模块来说一下模型类的应用,为了明了我对其作了简化,但是功能保持完整,基本上包函了模型类的基本应用,如添加数据,修改数据、查询数据、删除数据。
一、模型操作方法insert()--添加数据
下面是级别模块的后台控制器level.php的代码片断: view source print?| 01 | <?php |
| 02 | defined('in_phpcms') or exit('no permission resources.'); |
| 03 | pc_base::load_app_class('admin', 'admin', 0); |
| 04 | pc_base::load_app_func('global'); |
| 05 | class level extends admin {//继承后台管理类,所以就含有了权限控制 |
| 06 | private $level; |
| 07 | public $username; |
| 08 | //控制器的构造函数,加载初始化一些功能操作 ,如加载了level_model |
| 09 | public function __construct() { |
| 10 |
| 11 | $this->username = param::get_cookie('admin_username'); |
| 12 | $this->level = pc_base::load_model('level_model');//加载级别模型类level_model.class.php |
| 13 |
| 14 | } |
| 15 | //添加足球级别信息 |
| 16 | public function addlevel(){ |
| 17 | if(isset($_post['dosubmit'])){//判断如果提交表单则执行下面的插入语句 |
| 18 |
| 19 | if($this->level->insert($_post['football'])){ |
| 1 | showmessage(l('level_successful_added'),'?m=football&c=level&a=levellists'); |
| 2 | } |
| 1 | }else{ |
| 2 | include $this->admin_tpl('level_add');//加载后台添加级别的模板 |
| 3 | } |
| 4 | } |
模板代码片断:
view source print?| 01 | <form action="?m=football&c=admin_sl&a=addlevel" method="post" name="myform" id="myform" > |
| 02 | <table class="table_form" width="100%" cellspacing="0"> |
| 03 | <tbody> |
| 04 | <tr> |
| 05 | <th width="80"><strong><?php echo l('level_name')?>:</strong></th> |
| 06 | <td><input type="text" name="football[level]" size="20" id="level" class="input-text"/></td> |
| 07 | </tr> |
| 08 | <tr> |
| 09 | <th width="80"><strong></strong></th> |
| 10 | <td><input type="submit" name="dosubmit" id="dosubmit" value=" <?php echo l('submit')?> "> <input type="reset" class="dialog" value=" <?php echo l('clear')?> "</td> |
| 11 | </tr> |
| 12 | </tbody> |
| 13 | </table> |
| 14 | </form> |
| 01 | public function addlevel(){ |
| 02 | if(isset($_post['dosubmit'])){ |
| 03 | $sql = "insert into `fb_level` (`level`) values ('".football[level]."')"; |
| 04 | $result=$this->level->query($sql); |
| 05 | if($result){ |
| 06 | showmessage(l('level_successful_added'),'?m=football&c=level&a=levellists'); |
| 07 | } |
| 08 |
| 09 | }else{ |
| 10 | include $this->admin_tpl('level_add'); |
| 11 | } |
通过两个方法的对比我们知道,使用phpcms v9封装的方法insert()插入数据时更为简单方便。当然上面插入的字段只有一个,如果插入十几二十个字段的话,依然是$this->level->insert($_post['football'])就搞定。如果用mysql语句的话,就显得繁琐不堪了。砍柴不误磨刀工,所以phpcms v9二次开发中,熟悉运用model.class.php数据库模型类的方法,能起到事半功倍的作用。(待续...)
转载于:https://www.cnblogs.com/semcoding/p/3358799.html
总结
以上是生活随笔为你收集整理的phpcms v9二次开发之模型类的应用(1)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 修改Servlet再运行无效
- 下一篇: PHP创建XML文件讲解