YII中使用事务
2014-02-26 10:38
295 查看
$transaction= Yii::app()->db->beginTransaction();//创建事务
$transaction->commit();//提交事务
$transaction->rollback();//回滚事务
$transaction->commit();//提交事务
$transaction->rollback();//回滚事务
//使用事务,操作如果失败,则回滚 $transaction=Yii::app()->db->beginTransaction(); try{ $orders_detial= new TblOrderDetial(); $orders->orders_sn=$orders_sn=date('ymd-',$time).rand(1000,9999); $orders->consignee=$_GET['consignee']; $orders->shipping_id=$_GET['shipping']; $orders->pay_id=$_GET['payment']; $orders->goods_amount=$cart->getPrice(); $orders->add_time=date('Y-m-d H:I',$time); $orders->address=$_GET['address']; $orders->mobile=$_GET['mobile']; $orders->save(); $orders_id=$orders->attributes['orders_id']; //读取购物车内的信息,写入order_detial表中 $items=$cart->items(); $succ=array(); foreach($items as $k=>$v){ $detialModel=new TblOrderDetial(); $detialModel->orders_id=$orders_id; $detialModel->goods_id=$k; $detialModel->goods_name=$v['name']; $detialModel->shop_price=$v['shop_price']; $detialModel->goods_number=$v['num']; if($temp=$detialModel->save()){ $succ[]=$temp; } } if($cart->cnt()==count($succ)){ //如果入库的数量等于购物车里面的数量,则回滚 $transaction->commit(); } }//try end catch(Exception $e){ $transaction->rollback(); }
相关文章推荐
- Yii框架事务的使用
- 【PHP】Yii2中事务的使用以及代码实例
- Yii使用事务提交,批量提交,提高速度
- Yii中的数据库事务的使用方法小结
- Yii使用事务提交,批量提交,提高速度
- 【PHP】Yii2中事务的使用以及代码实例
- yii-程序- 使用事务
- Yii事务的使用
- yii如何使用事务,begin,commit,rollback
- yii如何使用事务,begin,commit,rollback
- yii如何使用事务
- SQLite的事务处理和listview的使用
- 在程序中使用事务,处理无外键关系的表与表间的操作。
- Yii 多表关联relations,需要与with()方法联合使用
- 在yii中使用session和cookie
- 4:使用数据库的表连接(Yii权威指南)
- Android SQLite数据库(事务)的使用,多线程CRUD并发操作(可用于实际开发)
- ASP.NET中使用三层架构事务的技巧实战
- Yii 1.1.17 四、属性标签、AR类增删改查、使用上传类与扩展第三方类库
- Spring 使用注解方式进行事务管理