您好,欢迎访问一九零五行业门户网

PHP事务的如何写?

php 的事务怎么写? 我现在是一条update,一条insert
代码如下,错误是,值类型发生了错误,事务没起作用.
$db = new dbmanager(); $conn = $db->getconnection(); $conn->set_charset(utf8); if(mysqli_connect_errno()) { echo 'error connect database! please content manager!'; exit; } //echo connection_status(); $tbnums = explode(',',$tbnum); $conn->autocommit(false); $flag = true; $a=0; foreach($tbnums as $key => $value) { $updatebalance = update t_sms_tbnum set status = 2 where id = ?; $insertrelate = insert into t_sms_tbnumrelate (tbid,ownclientid,realfee,createtime) values(?,?,?,?); $stmtupdateclient = $conn->prepare($updatebalance); $stmtupdateclient->bind_param('i',$value); $ss = $stmtupdateclient->execute(); $stmt = $conn->prepare($insertrelate); $foura = 4; $a++; if($a!=0){ $value = 's'; } $stmt->bind_param('iids',$value,$clientid,$foura,date('y-m-d h:i:s')); $boooo = $stmt->execute(); echo $ss.'+'.$boooo; if($stmtupdateclient->affected_rows affected_rows affected_rows.'|'.$stmt->affected_rows; $flag = false; break; } } if(!$flag) { $conn ->rollback(); $conn -> autocommit(true); $conn->close(); return 'paylog false!'; }else { $conn->commit(); $conn -> autocommit(true); $conn->close(); return '1'; }
回复讨论(解决方案) if( $stmt->affected_rows affected_rows rollback(); $conn -> autocommit(true); $conn->close(); return 'unknow_error'; }else { $conn->commit(); $conn -> autocommit(true); $conn->close(); return '1'; }
其它类似信息

推荐信息