thinkphp 多表事务处理
try{
$this->user = D('User');
$this->user->startTrans(); //开始事务
$res = $this->user->Saveuser($where,$data);
$res1 = $this->user->Saveuser($where,$data);
if(!$res||!$res1){
throw new \Exception('数据实例化失败');
}
$this->user->commit(); //确认事务
}catch(\Exception $e){
$this->user->rollback(); //回滚 }
/*
* 添加酒店和房型
* */
public function insertAll($arr_hotel=array(),$arr_room=array()){ $model = new Model();
$model->startTrans(); $flag=false; $hid = $model->table(C('DB_PREFIX').'hotel')->add($arr_hotel);
if( $hid && count($arr_room) ==0 ){//如果没有传入房型的信息则,直接提交数据 $flag=true;
}else if( $hid && count($arr_room) >= 0){//存在对应房型信息,则添加对应的酒店编号,并处理提交
for($i=0 ; $i<count($arr_room) ; $i++){
$arr_room[$i]['hid'] = $hid;
}
$rid = $model->table(C('DB_PREFIX').'room')->addAll($arr_room);
if( $rid ){
$model->commit();
$flag=true;
}
} if(!$flag){
$model->rollback();
}else{
$model->commit();
}
return $flag;
}
thinkphp 多表事务处理的更多相关文章
- ThinkPHP框架表单验证
对注册到test表的表单进行验证 在注册之前要对表单进行验证: 用户名非空验证,两次输入密码必须一致即相等验证,年龄在18~50之间即范围验证,邮箱格式正则验证. 自动验证是ThinkPHP模型层提供 ...
- thinkphp多表查询
在学习thinkphp 的过程中,需要对多表进行操作,但是在实际过程中,总是遇到各种问题,所以写下这篇博文,作为自己的学习历程 在操作过程中,两表查询都没有问题,但是三表查询就开始出现问题 有以下三张 ...
- thinkphp两表联查并且分页
ThinkPHP中关联查询(即多表联合查询)可以使用 table() 方法或和join方法,具体使用如下例所示: 1.原生查询示例: $Model = new Model(); $sql = 'sel ...
- 教你如何写thinkphp多表查询语句
1.table()函数 thinkphp中提供了一个table()函数,具体用法参考以下语句: $list=$Demo->table('think_blog blog,think_type ty ...
- thinkphp Ajax表单提交
ajax无刷新提示...局部刷新... http://www.thinkphp.cn/extend/230.html 保存表单数据的表 绿色的部分就是ajax显示出来的东西 控制器 ajax检查标题 ...
- ThinkPHP如果表名有下划线需要用Model应该怎么做?
最近遇到一个问题,在用TP做系统的时候,我建立的表是 “tp_admin_user” 但是要用到的模型是 “AdminUserModel.model.class.php”,应该如何做? 解决方法: & ...
- thinkphp如果表名有下划线需要用Model
模型命名规范 ThinkPHP 对数据库的表名和模型类的命名遵循一定的规范.首先数据库的表名和字段全部采用小写形式,模型类的命名规则是除去表前缀的数据表名称,并且首字母大写,然后加上模型类的后缀定义. ...
- thinkphp两表,多表联合查询及分页的连贯操作写法
ThinkPHP中关联查询(即多表联合查询)可以使用 table() 方法或和join方法,具体使用如下例所示: 1.原生查询示例: 代码如下: $Model = new Model(); $sql ...
- thinkphp 两表、三表联合查询
//两表联合查询 $Model = M('T1');$Model->join('left join t2 on t1.cid = t2.id')->select();// $list = ...
随机推荐
- PDO drivers no value in Windows
学习php编程遇到 Uncaught exception 'PDOException' with message 'could not find driver' 或者 Undefined class ...
- 解决ios8 webView加载的地图无法定位问题
本文转载至http://www.cocoachina.com/bbs/read.php?tid-237825.html 1.在文件info.pilist 中导入 NSLocationWhenI ...
- HTML+CSS实现简单三级菜单
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Markov Process
w Markov Process -- from Wolfram MathWorld http://mathworld.wolfram.com/MarkovProcess.html 谷歌背后的数学_ ...
- pythpn的zip函数
zip可接受多个序列作为参数,返回一个tuple列表. 例1:没有参数 >>> b = zip() >>> print b [] 例2:一个参数 >>& ...
- poj 1012 & hdu 1443 Joseph(约瑟夫环变形)
题目链接: POJ 1012: id=1012">http://poj.org/problem?id=1012 HDU 1443: pid=1443">http:// ...
- Linux中的grep和cut
提取行: grep --color 着色 -v 不包含 提取列: cut -f 列号 提取第几列 -d 分隔符 以什么为分隔符,默认是制表键 局限性:如果分隔符不那 ...
- 并发 错误 java.lang.IllegalMonitorStateException: current thread not owner 分析
public class ThreadTest implements Callable<String> { public String call() throws Exception { ...
- PyNN standard model(转)
PyNN standard model 转自http://blog.csdn.net/qq_34886403/article/details/76667477
- JavaScript+css+ div HTML遮罩層效果
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Test</title ...