热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

thinkphp增删改查简单的操作

CURD增删改查操作,先给出一套代码CURDAction.class.php<?php//测试对于数据库的增删改查操作classCURDActionextendsAction{//index页面publ...

CURD增删改查操作,先给出一套代码CURDAction.class.php

  1.  
  2. //测试对于数据库的增删改查操作 
  3.  
  4. classCURDActionextendsAction 
  5.  
  6.  
  7. //index页面 
  8.  
  9. publicfunctionindex() 
  10.  
  11.  
  12. $this->assign(&#39;title&#39;,&#39;添加数据&#39;);//这里设置了模板变量{$title} 
  13.  
  14. $this->assign(&#39;datetime&#39;,date("Y-m-dH:i:s")); 
  15.  
  16. $this->display(); 
  17.  
  18.  
  19. //INSERT操作 
  20.  
  21. publicfunctioncreate() 
  22.  
  23.  
  24. //初始化操作,建立表think_demo所对应的映射对象(O/RMapping) 
  25.  
  26. $demo=D("Demo"); 
  27.  
  28. if($demo->create()){ 
  29.  
  30. //对字段autotime的赋值操作:以date("Y-m-dH:i:s")的方式获取mysql数据库datetime字段类型所接受的日期格式。 
  31.  
  32. $demo->autotime=date("Y-m-dH:i:s"); 
  33.  
  34. //insert操作 
  35.  
  36. $demo->add(); 
  37.  
  38. //跳转到显示页面 
  39.  
  40. //$this->display("read"); 
  41.  
  42. $this->redirect("read"); 
  43.  
  44. }else
  45.  
  46. header("Content-Type:text/html;charset=utf-8"); 
  47.  
  48. exit($demo->getError().&#39;[返回aaaaaa]&#39;); 
  49.  
  50.  
  51.  
  52. //SELECT操作 
  53.  
  54. publicfunctionread() 
  55.  
  56.  
  57. $demo=D("Demo"); 
  58.  
  59. $data=$demo->order(&#39;iddesc&#39;)->limit(10)->select(); 
  60.  
  61. $this->assign(&#39;data&#39;,$data); 
  62.  
  63. $this->assign(&#39;title&#39;,&#39;添加数据2&#39;); 
  64.  
  65. $this->display(); 
  66.  
  67.  
  68. //UPDATE操作 
  69.  
  70. publicfunctionupdate() 
  71.  
  72.  
  73. $demo=D("Demo"); 
  74.  
  75. //实践时发现,当用户不出发onClick事件的话,create()方法可能不被执行,因为单刷页面的话,数据库没有被更新 
  76.  
  77. //create()方法:从html表单中自动提取数据,注入到Model对象中。 
  78.  
  79. //$demo->create(); 
  80.  
  81. //$demo->save(); 
  82.  
  83. //和上面的代码一样 
  84.  
  85. $date[&#39;title&#39;]=$_POST[&#39;title&#39;]; 
  86.  
  87. $date[&#39;content&#39;]=$_POST[&#39;content&#39;]; 
  88.  
  89. $date[&#39;id&#39;]=$_POST[&#39;id&#39;]; 
  90.  
  91. $demo->save($date); 
  92.  
  93. $this->assign(&#39;title&#39;,&#39;更新数据2&#39;); 
  94.  
  95. $this->display(); 
  96.  
  97.  
  98. //DELECT操作 
  99.  
  100. publicfunctiondelect() 
  101.  
  102.  
  103. $demo=D("Demo"); 
  104.  
  105. $demo->where(&#39;id=5&#39;)->delete(); 
  106.  
  107. $this->redirect("read"); 
  108.  
  109.  
  110.  
  111. ?> 

理解一下操作,就能理解上面的代码了,因为要下班了,回家后再作详解.

1。$demo=D("Demo");

通过数据库建立一个指定表的映射对象。

2。$demo->create()

通过相同的表单name属性名,自动的把表单里的值加载到映射对象中

3。$demo->add();

插入操作,将不为空的映射对象里的数据插入到数据库内

4。$date[&#39;title&#39;]=$_POST[&#39;title&#39;];

$date[&#39;content&#39;]=$_POST[&#39;content&#39;];
 
$date[&#39;id&#39;]=$_POST[&#39;id&#39;];
 
$demo->save($date);
 
更新操作,这里做的是无条件更新,系统会自动通过主键更新
 
5。$demo->where(&#39;id=5&#39;)->delete();
 

通过设置条件,删除操作。

6。$data=$demo->order(&#39;iddesc&#39;)->limit(10)->select();

$this->assign(&#39;data&#39;,$data);

推荐阅读
  • LeetCode 540:有序数组中的唯一元素
    来源:力扣(LeetCode),链接:https://leetcode-cn.com/problems/single-element-in-a-sorted-array。题目要求在仅包含整数的有序数组中,找到唯一出现一次的元素,并确保算法的时间复杂度为 O(log n) 和空间复杂度为 O(1)。 ... [详细]
  • 如何在Faceu激萌中设置和使用妆容切换特效?
    本文将详细介绍如何在Faceu激萌应用中设置和使用妆容切换特效,帮助用户轻松实现创意拍摄。无论是新手还是有经验的用户,都能从中受益。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • Python 异步编程:深入理解 asyncio 库(上)
    本文介绍了 Python 3.4 版本引入的标准库 asyncio,该库为异步 IO 提供了强大的支持。我们将探讨为什么需要 asyncio,以及它如何简化并发编程的复杂性,并详细介绍其核心概念和使用方法。 ... [详细]
  • 探讨一个老旧 PHP MySQL 系统中,时间戳字段不定期出现异常值的问题及其可能原因。 ... [详细]
  • 国内BI工具迎战国际巨头Tableau,稳步崛起
    尽管商业智能(BI)工具在中国的普及程度尚不及国际市场,但近年来,随着本土企业的持续创新和市场推广,国内主流BI工具正逐渐崭露头角。面对国际品牌如Tableau的强大竞争,国内BI工具通过不断优化产品和技术,赢得了越来越多用户的认可。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 郑州大学在211高校中的地位与排名解析
    本文将详细解读郑州大学作为一所位于河南省的211和双一流B类高校,在全国211高校中的地位与排名,帮助高三学生更好地了解这所知名学府的实力与发展前景。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • 优化ASM字节码操作:简化类转换与移除冗余指令
    本文探讨如何利用ASM框架进行字节码操作,以优化现有类的转换过程,简化复杂的转换逻辑,并移除不必要的加0操作。通过这些技术手段,可以显著提升代码性能和可维护性。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • 电子元件封装库:三极管、MOS管及部分LDO(含3D模型)
    本资源汇集了常用的插件和贴片三极管、MOS管以及部分LDO的封装,涵盖TO和SOT系列。所有封装均配有高质量的3D模型,共计96种,满足日常设计需求。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
author-avatar
潇湘V烟雨
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有