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

PHP事务的怎么写

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';
}
其它类似信息

推荐信息