當前位置:
首頁 >
phpcms v9二次开发之模型类的应用(1)
發布時間:2025/6/17
46
豆豆
生活随笔
收集整理的這篇文章主要介紹了
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文件讲解