二、模型操作方法select()--查询语句
         //查询级别管理列表信息
    public function levellists() {

$lelists = $this->level->select();//查询语句方法

include $this->admin_tpl('level_list');//加载后台级别管理列表的模板
          }
         模型select()方法,默认情况下查询fb_level表所有字段的信息,上面的levellists()方法如果转化为mysql语句为:
         
         public function levellists() {

$sql="select * from fb_level ";//sql查询语句方法

$lelists=$this->level->query($sql);

include $this->admin_tpl('level_list');//加载后台级别管理列表的模板
              }
  查询获取的数据列表如图:

三、模型操作方法update()--更新语句
//修改级别信息

public function editlevel() {

if(isset($_get['id'])){//获取要修改的级别id

$id = intval($_get['id']);

if(!$id) showmessage("操作失败");//如果获取的id为空,则返回操作提示信息

if(isset($_post['dosubmit'])) {

$this->level->update($_post['level'], array('id' => $id));

} else {

$where = array('id' => $_get['id']);//查询条件,是一个数组

$level_info = $this->level->get_one($where);//get_one()模型方法,获取一条记录

include $this->admin_tpl('level_edit');//加载后台级别修改的模板

}

}

}
 写成等效的mysql语句
  public function editlevel() {

if(isset($_get['id'])){//获取要修改的级别id

$id = intval($_get['id']);

if(!$id) showmessage("操作失败");//如果获取的id为空,则返回操作提示信息

if(isset($_post['dosubmit'])) {

$sql="update fb_level set level = '".$_post['level']."' where id = '".$id."' ";

$lelists=$this->level->query($sql);

} else {

$where = array('id' => intval( $_get['id']));//查询条件,是一个数组

$level_info = $this->level->get_one($where);//get_one()模型方法,获取一条记录

include $this->admin_tpl('level_edit');//加载后台级别修改的模板

}

}

}

修改别级效果图:

四、模型操作方法delete()--删除语句
//删除级别信息 
public function dellevel() {
  
  if(isset($_get['id'])){

$levelid = intval($_get['id']);

$result = $this->level->delete(array('id'=>$levelid));//模型删除语句

if($result){//返回删除结果提示信息

showmessage(l("操作成功"),'?m=football&c=level&a=levellists');

}else {

showmessage(l("操作失败"),'?m=football&c=level&a=levellists');

}

} 
 }
同样道理,写成等效的mysql的删除语句如
  
public function dellevel() {
  
  if(isset($_get['id'])){

$id = intval($_get['id']);

$result=$this->level->query("delete from `fb_level` where `id` in ($id )");

if($result){//返回删除结果提示信息

showmessage(l("操作成功"),'?m=football&c=level&a=levellists');

}else {

showmessage(l("操作失败"),'?m=football&c=level&a=levellists');

}

} 
 }

至此,明白模型类model.class.php的查询、添加、修改、删除数据的运用,我们就可以在phpcms v9二次开发中根据需求随心所欲地开发自己的模块。

phpcms v9二次开发之模型类的应用(2)的更多相关文章

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

    在<phpcms二次开发之模型类model.class.php>中讲到了模型类的建立方法,接下来我讲一下模型类的应用.      前段时间我基于phpcms v9开发了一个足球网.足球网是 ...

  2. phpcms v9二次开发之数据模型类

    系统模型类:model.class.php数据模型类的位置:/phpcms/libs/classes phpcms v9二次开发中,我们要经常需要对模块的数据表进行查询.添加.修改和删除数据等操作,所 ...

  3. PHPCMS V9二次开发便捷自定义后台入口文件夹

    phpcms v9二次开发便捷自定义后台入口文件夹 最新发布的phpcms v9由于采用了mvc的设计模式,所以它的后台访问地址是固定的,虽然可以通过修改路由配置文件来实现修改,但每次都修改路由配置文 ...

  4. PHPCMS V9二次开发]自定义字段模型-文本组

    phpcms v9,我们在做类似于酒店房型等类型的时候,需要用到文本组字段模型,但phpcms并未提供该模型.如下图所示效果: 展示效果如下: 步骤/方法 打开phpcms\modules\conte ...

  5. phpcms v9二次开发笔记

    phpcms是基于MVC结构的. 安装: 下载phpcms_v9.5.9_UTF8.zip:新建目录phpcms,将压缩包里install_package目录下所有文件复制到phpcms目录.浏览器输 ...

  6. phpcms V9 二次开发------(获取点击数详解)

    关于phpcms V9的点击数的使用应该有不少数是直接调用网上搜索到的代码,但是对于一些想要深入研究开发的人来说,看到网上的代码后更是不解,本人这几天看了看,了解了一些东西,在这里写出来分享一下,首先 ...

  7. [PHPCMS V9二次开发]自定义字段模型-添加字段类型

    步骤/方法 打开phpcms\modules\content\fields目录,复制文件夹downfiles,并改名为textgroups. 打开phpcms\modules\content\fiel ...

  8. phpcms v9 二次开发 - 自己添加源文件

    一.在根目录添加入口文件, 我现在要在根目录添加一个文件名为test.php 这样一个文件,为了调用系统的公用类和函数,必须加入一下包含文件 test.php代码如下 <?phpdefine(' ...

  9. PHPCMS V9 二次开发常用代码集

    0:调用最新文章,带所在版块 {pc:get sql="SELECT a.title, a.catid, b.catid, b.catname, a.url as turl ,b.url a ...

随机推荐

  1. moveToThread的最简单用法(依葫芦画瓢即可)(使得线程也更偏向于信号槽的使用方法)

    /*! * \file main.cpp * * Copyright (C) 2010, dbzhang800 * All rights reserved. * */ #include <QtC ...

  2. -_-#【Angular】依赖注入

    AngularJS学习笔记 var BoxCtrl = function($scope, $element) { } var str = BoxCtrl.toString().replace(/\s/ ...

  3. 【转】设置TextView文字居中

    原文网址:http://blog.csdn.net/lanpy88/article/details/6616924 有2种方法可以设置TextView文字居中: 一:在xml文件设置:android: ...

  4. HBase MultiVersionConsistencyControl

    注明:本文部分文字和图片翻译或引用自http://blogs.apache.org/hbase/entry/apache_hbase_internals_locking_and. HBase在保证高性 ...

  5. Linux网卡驱动架构分析

    一.网卡驱动架构 由上到下层次依次为:应用程序→系统调用接口→协议无关接口→网络协议栈→设备无关接口→设备驱动. 二.重要数据结构 1.Linux内核中每一个网卡由一个net_device结构来描述. ...

  6. SRM475 - SRM479(1-250pt,500pt)

    SRM 475 DIV1 300pt 题意:玩游戏.给一个棋盘,它有1×n(1行n列,每列标号分别为0,1,2..n-1)的格子,每个格子里面可以放一个棋子,并且给定一个只含三个字母WBR,长度为n的 ...

  7. in, out, ref

    C#中的函数传递方式可以为in.out.ref(引用) in方式的是默认的传递方式,即向函数内部传送值,不作讲解 很多语言都有类似的操作从函数向调用者返回值,这样我们可以通过函数的调用返回多个值,因为 ...

  8. HDU 3660 Alice and Bob's Trip

    树形dp,这道题如果选G++的话,只输入都会超时.我是C++ 1900ms + 飘过的...但是输入优化后就快了很多了,1100ms左右.dfs按层次求最值就行了,差不多也算是博弈吧,到bob取的时候 ...

  9. oracle用户解锁和改密

    alter user hs_user account unlock; alter user hs_asset account unlock; alter user hs_his account unl ...

  10. WPF: How to use DatePicker in XAML-DataGrid

    https://msdn.microsoft.com/en-us/library/system.windows.controls.datagridtemplatecolumn(v=VS.100).as ...