Db::startTrans();
try{
//添加订单信息
$order_id = Db::name('order')->insertGetId(['uid'=>$uid,'user_name'=>$user_name,'user_mobile'=>$user_mobile,'item_name'=>$item_name,'state'=>$state]);
foreach ($date as $k=>$v){
$id=Db::name('orderinfo')->insertGetId(['order_id'=>$order_id,'uid'=>$uid,'goods_id'=>$v['goods_id'],'goods_num'=>$v['goods_num'],'create_time'=>time()]);
$ids.=$id.',';
}
substr_replace($ids,0,-1);
Db::name('order')->where('id',$order_id)->update(['ids'=>$ids]);
Db::commit();// 提交事务
return self::success($order_id);
}catch (\Exception $e){
Db::rollback();
return json($e->getMessage());
}
分享一个TP的事务 超级简单
Db::startTrans(); //打开事务
Db::commit();// 提交事务
Db::rollback();//回滚事务
我写的事务提交后发现成功了 但是数据库没有数据 检查了一下发现自己粗心忘了写提交事务 成功后提交事务就可以了