ThinkPHP对数据库的CRUD

SimpleThinkPHP_CRUD_Demo curd 立即下载

首先,在被里面的一个__SELF__的一个全局变量搞不明白了,我知道,这个是接收表单值的,但是他的接收方法我还是有些不明白,根据我的理解应该是这样:

在我们的控制器里面定义了一个我们自己的公共方法,那么对应的我们就应该在VIEW当我视图中建立方法名的html文件,这样数据模型-----控制器-----还有视图

就建立起了MVC模式的分层关系。但是,在视图的表单值集合具体怎么传到控制器的对应方法里面,我觉得应该是同样的的向所有的面向对象的方法一样,为了

让我们更加规范的书写代码,不得不高度的封装了一些系统方法,这里主要说的ThinkPHP的系统方法,所以,我们才能够非常简单的操作数据库,这里的取出

表单数据相对以往传统的方式那更是简单的不得了,这样做的好处我想应该是让我们把心思放在处理真正的业务逻辑上面去,下面是我在测试的过程里面记录的

代码:

控制器的对数据库的一般增加数据方法:

/*建立对应表的对象,使用方法,返回*/
			/*$user=A("Home/User");
			echo $user->num();
			$test=A("Admin/Index");
			$test->test();
			echo "<br/>";*/
			//建立数据库的对象,3.2版本要使用命名空间
			//$goods=new \Model\emptestModel();
 			//$goods=D('emptest');
 			//xiami
//			在这里就是说,如果更换表,直接更换对象就可以了
			//$goods=M('emp'); 
			
			//下面是限制查询条件
			//$info=$goods->where("salary > 300 and name like 'emp%' ")->select();
// 			$info=$goods->where("salary > 300")->select();
// 			$info=$goods->select('1,5,3');
// 			$info=$goods->find(5);
			//$info=$goods->having("salary>30")->select();
			//已经执行了一句select语句
// 			echo $goods->count().'<br/>';
// 			echo $goods->max('salary').'<br/>';
			
// 			foreach ($info as $key=>$value){
// 				echo $value['name'].'<br/>';
// 			}
			//向数据表里面 添加数据
// 			$arr=array('name'=>'徐宁x1','garde'=>3,'email'=>'xuning@qq.com');
// 			$res=$goods->add($arr);
			//$goods->name='徐宁-XCXC';
			//$res=$goods->add();
			//$res=$goods->delete(5);//但是这里返回的已经不是主键值了,而是被改变的行数多少
			//delete也可以和where的条件同用,在最后添加delete方法
			//如果传递任何参数,为了避免误删,所以就不执行任何操作
			//如果是更新数据的话,实例化完成一个数据之后,分别给予后一次给予,最后就执行一个save方法,前面的很相似,save在最后执行
			/*$data['name']="徐宁_CC";
			$res=$goods->save($data);*/
			//$res=$goods->where("id>2 and id<7")->delete();
			
			//也可以通过AR的方式添加
			/*最后add都是对象实例,添加的数据1:数组,2:逐条添加
			 * 返回的是主键的ID值*/
			/*if($info){
				echo "SUCCESSFUL";
			}else{
				echo "faul";
			}
			echo "被改变的主键值是:".$info.'<br/>';*/
			//同样的也可以去切换数据库,运用db(),方法。
			
// 			echo "<table border='1px'>";
// 			foreach($info as $key => $value){
// 				echo "<tr>";
// 				echo "<td>";
// 				echo $key;
// 				echo "</td>";
// 				echo "<td>";
// 				echo $value;
// 				echo "</td>";
// 				echo "</tr>";
				
// 			}
// 			echo "</table>";
			$this->assign('info',$info);
			$this->display();
关于具体的视图就完全没有多少必要谢了,但是要非常注意的是我们在使用Smarty模板引擎的时候,要更换默认的think模板,因为Smarty我觉得是最好的模板,如线面的

数据路径:<link rel="stylesheet" type="text/css" href="{$smarty.const.CSS_URL}01.css">

系统的提交路径:<form action="{$smarty.const.__SELF__}" method="POST">

等等这些都是要用Smarty的方法的,但是我在试图里面想遍历的时候,发现报错,不知道这是什么原因,我绝得应该是
ThinkPHP版本的问题,所以,再测试之前还是要仔细读一下手册。

关于收集和添加数据的方式如下:

function add(){
			$goods=D("emptest");
			if(!empty($_POST)){
				$goods->create();
				$res=$goods->add();
				if($res){
					echo "添加成功";
				}else{
					echo "添加失败";
				}
			}else{
				$this->display();
			}
			
		}

其中,create()方法是收集表单的数据,这个自然是__SELF__的作用结果。

然后收集完了我们就同样的使用add()方法进行添加。这里相对于传统方式具有一定的优势,不仅仅简化代码,而且,可以安全的处理数据。


【探秘】二维异形件重叠移除算法:从度量到消除的实战解析 本文深入解析二维异形件重叠移除算法的核心技术与实战应用,涵盖重叠度量、零件扰动策略及消除方法。通过NFP(临界多边形)技术、空间分区加速等优化手段,有效解决异形件排版中的重叠问题,提升材料利用率和计算效率。适合制造业、CAD软件开发者及算法工程师参考。 阅读详情

相关推荐

TMS-EEG数据预处理:eeglab工具包TESA(一)

b. 自动选择:Tools -> Reject data epochs -> Reject by probability,然后进行Plot -> channel,进行删除。TMS-EEG(经颅磁刺激-脑电图)是一种结合了TMS和EEG记录的技术,这种技术允许研究者在非侵入的情况下探测大脑环路,评估大脑的兴奋性和连通性等皮层特性。对移除脉冲伪迹的数据进行插值:Tools ->TESA -> Interpolate removed data;插值后,画图查看:数据会有数值;

weixin_43604817的博客 1496

ThinkPHP基本CRUD操作

6.13 CURD操作 创建(Create)ThinkPHP提供了灵活和方便的数据操作方法,对数据库操作的四个基本操作(CURD):创建add、更新save、读取select ,find(单条), getField(字段)和 删除delete的实现是最基本的,也是必须掌握的,在这基础之上才能熟悉更多实用的数据操作方法。CURD操作通常是可以和连贯操作配合完成的。下面来分析下各自的

houzhyan-博客 3188

华为私有云HCS 8.1.1实战:从镜像制作到云主机发放全流程指南

本文详细解析了华为私有云HCS 8.1.1从镜像制作到云主机发放的全流程实战指南。内容涵盖制作标准化QCOW2镜像、配置云主机规格与主机组、规划外部网络,以及在运营面为租户初始化资源、配置审批流与产品目录。最后,通过用户视角演示了从创建VPC网络到申请、审批并最终绑定EIP访问云主机的完整操作步骤,为运维人员和架构师提供了一套清晰、可落地的HCS部署与管理实践方案。

weixin_29305313的博客 1129

Thinkphp环境搭建连接HGDB实现CRUD

PSR 规范是 PHP Standard Recommendations,是一种编写规范,而不是一种标准,通过规范的代码编写将会使代码清晰且简洁。

weixin_39676699的博客 1066

AUTOSAR BswM配置实战:手把手教你用Vector Davinci Configurator搭建第一个模式管理规则

本文详细介绍了如何使用Vector Davinci Configurator工具配置AUTOSAR BswM模块,实现车身控制ECU的模式管理规则。通过实战案例,从环境准备、核心概念梳理到具体配置步骤,包括ModeRequestPort、ModeCondition、Logical Expression和Rules的构建,帮助工程师快速掌握BswM配置技巧,提升汽车电子软件开发效率。

weixin_28678831的博客 354

Agile Modbus使用和学习笔记

i < len;这里仅仅需要提供获取函数即可,离散输入是只读类型i++) {return 0;只读类型寄存器i++) {return 0;i < len;

Car12 170

Think PHP crud,ThinkPHP教程_PHP框架之ThinkPHP(八)【CRUD與連貫操作】

一、CRUDThinkPHP提供了靈活和方便的數據庫操作方法,其中最基本的就是CRUD四個操作,只有掌握了最基本的CRUD操作,才能更好的運用更多實用的數據庫操作方法CRUD操作通常與連貫操作配合1、創建操作使用add()方法或addAll()方法·add()方法可以直接傳入要插入的數據,而且會在插入之前會過濾掉數據表中不存在的字段以及非法的數據類型(例如對象、數組等非標量數據)。若當前表有主鍵自...

weixin_39897449的博客 509

3步!Spring Boot+OCR引擎秒提身份证/营业执照?手把手教你从零实现!

OCR技术革新文档识别效率 本文演示了如何利用Spring Boot+Tesseract OCR+OpenCV构建自动化文档识别系统。相比传统人工录入,OCR技术可实现: 5秒极速提取身份证/营业执照关键信息 精准识别中文文本(准确率90%+) 正则过滤自动匹配结构化数据 技术要点: OpenCV图像预处理(灰度化+二值化) Tesseract多语言OCR识别 正则表达式精准提取证件号码 效率提升达100倍,错误率降低90%,适用于金融、政务等需要批量处理证件的场景。

java专栏 906

ThinkPHP基本编程

本文我们来了解一个php后台开发框架:ThinkPHP。当我们熟悉了php,开始完成web项目时会发现,我们都会找一些框架,比如:前台比较出名的框架easyUI;后台比较常用的框架Thinkphp。当然,现在后台php开发的框架有很多,YII,CI等评价都比Thinkphp要高。但把Thinkphp作为第一个框架来举例讲解很有必要,因为它是中国人开发的,开发文档是中文的,它的MVC架构非常清晰容易

酷炫人笨笨熊 666

【保姆级教程】教你如何轻松获取MIMIC数据使用权限

文章非常详细地介绍了MIMIC数据库申请使用的全部步骤。

越努力 越幸运 6602

SAP CPI 之使用国密算法实现SM系列算法加解密

System.out.println("SM2-私钥:" + privateKey);System.out.println("SM2-公钥:" + publicKey);System.out.println("SM2-密文:" + encrypts);System.out.println("SM2-明文:" + data2);新建groovy,通过import之后,调用jar包中的方法。在CP中导入jar包,选择Upload,选中导入的jar包。的密钥和向量值,不安全!的公钥和私钥,不安全!

u012830826的博客 1335

thinkphp6.1~8.0 快速创建CRUD

快速创建模型CRUD源码。

zhang804633234的专栏 677

海思3559av100平台lan9500模块调试记录

1. 前言 通过USB2.0接口扩展一路百兆虚拟网口 2. 配置lan9500驱动 make ARCH=arm64 menuconfig 开启LAN95XX驱动,编译进内核 保存内核配置 3. 编译内核 make ARCH=arm64 CROSS_COMPILE=aarch64-himix100-linux- uImage -j 20 cd ../../arm-trusted-firmware/arm-trusted-firmware ./mk.sh cp ...

jzwjzw19900922的博客 909

【ThinkPHP学习】数据库CRUD操作

RT. ThinkPHP常规的CRUD操作总结如下:

Love.Hope.Faith 1468

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【PHP】ThinkPHP5的Db类进行CURD操作

在 ThinkPHP 5 中,可以使用 Db 类进行数据库的 CURD(增删改查)

uuzeray的博客 903

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

thinkphp5.0 与thinkphp 3.2的区别

thinkphp5.01、查询$list = DB::table("tp5_websites")->where('id',15)->find(); // 查询一条语句,带前缀 $list = DB::table("tp5_websites")->select(); // 查询多条语句,带前缀 $list = DB("websites")->where('id',15)->find(); // 助

编程技术提升 2141

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

tp5类的属性不存在_TP5中model与Db的区别

网络运维教程从入门到精通(无师自通版)​yun.itheima.com在TP5的使用过程中,很多使用者刚接触到数据库操作时,不能很好调用相关的方法进行数据库的交互。下面就分享一下TP5中Db与模型的区别。1、关于db与model的选择(1)使用DB方式是直接获取到的query类(thinkphp/library/think/db/Query.php)的对象进行数据库的操作提供了基本的数据库curd...

weixin_39817391的博客 503

crud php mysql_thinkphp操作数据库的CRUD

框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下。数据库的操作,无疑就是连接数据库,然后对数据库中的表进行各种查询,然后就是对数据的增删改的操作,一步步的讲述一下框架对数据库的操作想要操作数据库,第一步必然是要:链接数据库一、链接数据库(1)找到模块文件夹中的Conf文件夹,然后进行编写config.php文件我这里是这样的文件路径(2)打开这...

weixin_42303112的博客 240

ThinkPHP5\6 使用mongodb方法

# ThinkPHP5\6 配置mongodb ==1、首先使用Composer安装ThinkPHP5\6的MongoDb驱动:== ```shell composer require topthink/think-mongo ``` ==2、在app下的config文件夹中的 database.php 配置连接信息== ```php 'mongo'=>[ 'type' => 'mongo', 'hostname' => '127.0.0.1', 'database

UPCTO 2569

ThinkPHP 5

use think\Controller 1、$this->request->param(); 内置request 安全对象, 不再使用 $_GET ,$_POST 2、pathinfo 下 前台获取url参数 http://120.77.62.87/Questionnaire/public/index.php/home/Index/login/templat...

weixin_30478619的博客 85

thinkphp操作数据库的CRUD

框架有时会用到数据库的内容,在"ThinkPhp框架知识"的那篇随笔中提到过,现在这篇随笔详细的描述下。 数据库的操作,无疑就是连接数据库,然后对数据库中的表进行各种查询,然后就是对数据的增删改的操作,一步步的讲述一下框架对数据库的操作 想要操作数据库,第一步必然是要:链接数据库 一、链接数据库 (1)找到模块文件夹中的Conf文件夹,然后进行编写config.php文件 我这里是这样的...

weixin_30311605的博客 185

PHP学习:ThinkPHP框架数据库操作

1、select()语句$res = Db::table('stu')->select(); dump($res);2、find()语句$res = Db::table('stu')->where(['id'=>2])->find(); dump($res);3、value()语句$res = Db::table('stu')->where(['id'=>3])->value('name'); du

长沙火山 514

php tp5数据库增删改查,TP5 数据库的增删改查

添加数据CREATE TABLE IF NOT EXISTS `think_data` (`id` int(8) unsigned NOT NULL AUTO_INCREMENT,`name` varchar(255) NOT NULL COMMENT '名称',`status` tinyint(2) NOT NULL DEFAULT '0' COMMENT '状态',PRIMARY KEY (`...

weixin_34759094的博客 191

php 原生查询数据库,数据库的原生查询和数据库

摘要:第一:数据库的配置方式。一般数据库的配置采用本地静态配置的方式。直接修改config下的database.php文件来配置数据库第二:原生查询功能的实现原生查询调用的thinkphp目录下的Db.php中的三个主要的方法,connect.php、build.php和query.php。一般采用的是写原生的sql语句来执行的方式。第三:查询构造器的CURD操作。(1)数据库的添加操作,Db::...

weixin_32515349的博客 627

thinkphp的自增setInc和自减setDec

【代码】thinkphp的自增setInc和自减setDec。

qq_21810059的博客 1542

静态方法与非静态方法的区别_程序员必看之ThinkPHP5中model与Db的区别

在ThinkPHP5的使用过程中,很多使用者刚接触到数据库操作时,不能很好调用相关的方法进行数据库的交互。下面就分享一下ThinkPHP5中Db与模型的区别关于db与model的选择使用DB方式是直接获取到的query类(ThinkPHP5/library/think/db/Query.php)的对象进行数据库的操作提供了基本的数据库curd操作功能。使用model的方式是通过获取到模型对象然后在...

weixin_39964528的博客 359
上一篇: ThinkPHP整合Smarty模板引擎操作mysql数据库
下一篇: ThinkPHP实现对数据库中表的修改删除以及两种原生SQL语句的执行
宇宙第一帅
博客等级 码龄12年 22粉丝 147原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值