ThinkPHP 的CURD 基本操作
说起CURD,懂点SQL的人都知道,就是增删改查,做业务系统的时候,往往离不开这CURD,最近也是刚刚接触ThinkPHP,ThinkPHP的灵活性是比原生PHP好用的多,下面我就简单的介绍一下我的学习心得。
学习ThinkPHP对MySQL的操作,首先你要有MySQL,然后又PHP的运行环境。
wamp可以帮你解决配置的麻烦,关于wamp资料很多,百度就可以了。
下面就简单介绍一下ThinkPHP的增删改查的过程。
一、创建数据库,命名为t_user。
代码为:
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (
`userid` int(11) NOT NULL,
`username` varchar(25) DEFAULT NULL,
`usersex` varchar(6) DEFAULT NULL,
`userage` int(6) DEFAULT NULL,
PRIMARY KEY (`userid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
创建一个项目,命名为thinkPHP_Text,导入thinkphp核心包。
配置index.php文件。
启动项目,自动生成目录。如下图:
二、关于thinkphp的add()操作。
创建index的action文件,命名为IndexController.class.php,写一个函数insertUser(),在控制层中,你要得到前台的传值。
/**
* 添加用户信息
* 编码时间:2015-05-28
*/
public function insertUser($id,$name,$sex,$age){
$this->db(1,"DB_CONFIG1")->db(1);
$condition = array(//定义要添加的数据,放在一个数组里,命名为$condition
'userid' => $id,
'username' => $name,
'usersex' => $sex,
'userage' => $age,
);
$addInfo = $this->db(1,"DB_CONFIG1")->add($condition);//执行sql语句,insert
if($addInfo){
header("Location: http://localhost/thinkPHP_Text/index.php");
}
echo $this->getLastSql();//调试用,输出sql语句
return $addInfo;
}
/**
在model层中,记住命名方式,在本次配置中,命名为UserModel.class.php,对应的:
/**
* 添加用户信息
3 * 编码时间:2015-05-28
*/
public function insertUser($id,$name,$sex,$age){
$this->db(,"DB_CONFIG1")->db();
$condition = array(//定义要添加的数据,放在一个数组里,命名为$condition
'userid' => $id,
'username' => $name,
'usersex' => $sex,
'userage' => $age,
);
$addInfo = $this->db(,"DB_CONFIG1")->add($condition);//执行sql语句,insert
if($addInfo){
header("Location: http://localhost/thinkPHP_Text/index.php");
}
echo $this->getLastSql();//调试用,输出sql语句
return $addInfo;
}
这就是添加操作的核心代码。
具体的代码请到下面的链接下载,详细见注释:
http://pan.baidu.com/s/1hq7wfnm
ThinkPHP 的CURD 基本操作的更多相关文章
- 【mybatis】1、入门CURD基本操作(环境搭建)
#1.基本环境 环境 版本 jdk 1.7.0_10 ide eclipse-jee-luna-SR2-win32-x86_64 maven 3.3.3 mybatis 3.2.7 mysql 5.1 ...
- ThinkPHP 的CURD
1.ThinkPHP 3 读取数据 (重点) 对数据的读取 Read $m=new Model('User'); $m=M('User'); select $arr = $m->select() ...
- 【三十四】thinkphp之curd操作
1.数据创建(create) 接受提交过来的数据,比如表单提交的 POST(默认)数据.接受到数据后,还可以对数据进行有效的验证.完成.生成等工作 // 这里 create()方法就是数据创建,数据的 ...
- [转]ThinkPHP的CURD易忽视点小结
转自: http://www.oschina.net/code/snippet_2285640_44437. 1.使用对象的方法插入数据 D用法. $Form = D('Form'); $data[' ...
- Thinkphp的CURD
CURD即(Create Update Read Delete)其实也就是等同于增删改查. C:Create 创建数据 对数据的添加 Create$m=new Model('User');$m=M( ...
- MyBatis入门学习-连接oracle实现CURD基本操作
目录 前言 导入oracle库 配置 环境配置 配置引用 配置映射 查询 单条件查询 多条件查询 通过类字段传递参数 通过Map接口传参 Param注解 插入 更新 删除 字段映射 参考文献 前言 本 ...
- thinkphp的CURD操作
增 //a字段是主键 $data['b'] = 'bbb'; $data['c'] = 'c'; $new_id = M('test')->data($data)->add(); //ec ...
- ThinkPHP CURD方法盘点:field方法
ThinkPHP的CURD操作中有很多非常实用的方法,从这篇开始,我们会为大家一一介绍. 首先为大家介绍下field方法的用法.field属于模型的连贯操作方法之一,主要目的是标识要返回或者操作的字段 ...
- ThinkPHP3.1快速入门(2)数据CURD
上一篇中,我们了解了ThinkPHP的基础部分,以及如何创建一个控制器和模板,并知道了M方法的用法,本篇将会讲解下数据的CURD操作,探索下更多的数据操作. CURD CURD是一个数据库技术中的缩写 ...
随机推荐
- VS在Release模式下,难道还可以Debug?
就是这段代码: int main(int argc, char *argv[]) { QApplication a(argc, argv); cxcxsdee w; w.show(); QString ...
- Java中的属性与字段的区别
Java中属性和字段的区别 Java中的属性,通常可以理解为其属名性时根据get和set方法名得出的. 其规则是:去掉get或set后其剩余的字符串,如果第二个字母是小写的,则把第一个字母也变成小写 ...
- 由 char()函数返回的 ASCII字符集中的功能/控制字符
如果在excel下的单元格写入公式:=“国际经济与贸易”&CHAR(10)&"401班"&CHAR(10)&"A组".则出现: ...
- Qt入门(10)——调试技术
命令行参数当你运行Qt程序时,你可以指定几个命令行参数来帮助你调试.-nograb 应用程序不再捕获鼠标或者键盘.当程序在Linux下运行在gdb调试器中时这个选项是默认的.-dograb 忽略任何隐 ...
- c++转换构造函数和类型转换函数
看stl源码时,有一段代码感觉很奇怪 iterator begin() { return (link_type)((*node).next); } iterator和link_type是两种不同类型, ...
- 《Mathematical Olympiad——组合数学》——抽屉原理
抽屉原理可以说是组合数学中最简单易懂的一个原理了,其最简单最原始的一个表达形式:对于n本书放到n-1个抽屉中,保证每个抽屉都要有书,则必存在一个抽屉中有2本书.但是这个简单的原理在很多问题中都能够巧妙 ...
- SRM 395(1-250pt)
DIV1 250pt 题意:在平面直角坐标系中,只能走到整点,每次有两种移动方法,可以沿平行于坐标轴方向走,也可以沿45度方向走,前者走一步耗时wt,后者走一步耗时st.比如从(x, y)可以走到(x ...
- UITableView调优
UITableView的优化主要从三个方面入手: 提前计算并缓存好高度(布局),因为heightForRowAtIndexPath:是调用最频繁的方法: 异步绘制,遇到复杂界面,遇到性能瓶颈时,可能就 ...
- WdatePicker 控制选择范围
1. 跨无限级框架显示 无论你把日期控件放在哪里,你都不需要担心会被外层的iframe所遮挡进而影响客户体验,因为My97日期控件是可以跨无限级框架显示的 示例2-7 跨无限级框架演示 可无限跨越框架 ...
- Unity3D 集成 Face++ FacePlusPlus httpClient http协议 byte数组转string
//開始由于要实现跨平台.考虑过用curl封装c++的dll(android *.so)的方式,在c#Dllimport实现 //后来发现Unity3D本身支持http协议.且face++的api都是 ...