thinkphp之CURD
来源:互联网 发布:python xpath模块 编辑:程序博客网 时间:2024/05/16 11:18
令牌的使用方法 create,form表单中药指定method='post',不然create方法会报错的
例如
<form action="__URL__/add">
<input type="test" name="username">
<input type="submit" name="提交">
</form>
在IndexAction.class.php当中
function add() {
$user = new Model('user');
if($user->create) {
$this->success('create成功');
} else {
$this->error('失败');
}
}
我们可以在官网下载一个success.html页面,根据自己需求修改一下,也可以直接使用,这样就会出现成功或者失败的页面啦
关闭令牌的方法
在config.php中 添加数据元素
'TOKEN'=>FALSE,
对数据库的增删查改
$user = M('user');
//find();查找一条记录
//select();列出该表的所有记录
//findAll();与select类似
对数据库中查询或者操作添加特定条件 例如where limit order by
$user = M('user');
$user->where(id > 3)->select(); //顺序可变
$user->where(id > 1)->order('id desc')->limit('2')->select();
它等价于
$user->select(array('where'=>'id > 1','order'=>'id desc','limit'=>'2'));
这样是查询默认的表中所有的字段,如果我们想要查找特定的几个字段可以这样、
$user->where(id > 1)->order('id desc')->limit('2')->field('id,username')->select();//切记select()的顺序一定是方在最后面,不可改变他的位置
$user->select(array('field'=>'id,username','where'=>'id > 1','order'=>'id desc','limit'=>'2'));
根据个人习惯哪一种都可以
数组的形式和其他的查询形式是可以变更的
比如说 $user->where(id > 1)->order('id desc')->limit('2')->select();
他等价于 $user->where(id > 1)->order('id'=>'desc')->limit('2')->select();
$list = $user->table('think_user'=>'a','think_user_message'=>'b')->field('a.id as uid,b.username as name')->where('a.id=b.id')->select();
他等价于
$list = $user->table('think_user'=>'a','think_user_message'=>'b')->field('a.id'=>'uid','b.username'=>'name')->where('a.id=b.id')->select();
以上的多表关联仅仅是对简单的关联表进行查询
想使用join查询thinckphp有自己的函数,如法如下
$list = $user->table('think_user'=>'a','think_user_message'=>'b')->join('id on a.id=b.id','username on a.username=b.username')->select();
//distinct方法
$user->dlstinct(true)->select();//将表中重复的记录除掉
我们经常用到锁表机制,thinkphp中的用法是lock(true)
以上是对数据库读取的操作
下面的是对数据库的更新操作 我们使用的是save(); 例如
$data['username'] = 'test';
$data['password'] = md5('admin888');
$list = $user->where('id=5')->save($data);
这里可以用thinkphp中的date()方法进行代替传值
$data['username'] = 'test';
$data['password'] = md5('admin888');
$list = $user->where('id=5')->data($data)->save();
我们也可以不指定where条件 而是在提交更新数据的时候模拟一个where
$data['username'] = 'test';
$data['password'] = md5('admin888');
$data['id'] = '5';
$list = $user->save($data);
or
$list = $user->data($data)->save();
save()方法配合create()使用
function add() {
$user = new Model('user');
if($vo=$user->create) {
//这里没有对save进行赋值,是因为$vo已经将接受的表单数据添加给$user了,这时候save就是对user的操作啦,这就是createde的方便
if($user->save()) {
$this->success('更新成功');
} else {
$this->error('更新失败');
}
}
}
thinkphp数据库操作之添加add()
$data['username'] = 'test';
$data['password'] = md5('test');
$list = $user->add($data);
同样可以使用data()方法代替add()
$list = $user->data($data)->add();
add配合create方法使用和save一致
这些都是对form表单中 post方法的操作,我们也可以对表单中使用get方法进行 CURD 与post方法 不太一样
$_GET['password'] = md5($_GET['password']);
if($list = $user->add($_GET)) {
$this->success('添加成功');
} else {
$this->error('添加失败');
}
thinkphp中的delete()方法
$list = $user->delete(7);//会默认去寻找主键等于7的那条记录 并且删除掉
或者
$list = $user->where('id=7')->delete();//个人比较喜欢这种,比较直观
$user->getLastSql();调用最后执行的那条sql语句
- ThinkPHP 之 curd 操作
- thinkphp之CURD
- thinkphp 学习之CURD
- ThinkPHP CURD之登录
- ThinkPHP CURD之注册
- ThinkPHP CURD之修改(更新)
- thinkphp CURD
- thinkphp 学习之 CURD操作数据创建
- ThinkPHP CURD方法之where方法详解
- ThinkPHP CURD之循环查询&删除
- ThinkPHP学习 CURD
- ThinkPHP 数据CURD
- thinkphp数据库操作CURD
- thinkphp CURD操作
- ThinkPHP 数据库CURD操作
- ThinkPHP的CURD
- Thinkphp中的CURD总结
- ThinkPHP CURD操作
- css点击input和图片连接出新虚线解决办法
- mysql正则替换
- 查看打印php错误sql
- thinkphp引入头部文件
- thinkphp入口文件设置和路径关系
- thinkphp之CURD
- thinkphp之实例化模块
- ueditor百度编辑器图片放置不同的站点
- 多域名共用session
- php str_pad字符串填补函数
- php正则之匹配图片中的路径
- 关于方法论的对话之一方法论基本
- 零碎知识点总结
- 5.30 Struts2