Rumah >php教程 >php手册 >PHP mysql事务回滚操作实例

PHP mysql事务回滚操作实例

WBOY
WBOYasal
2016-06-13 10:09:271283semak imbas

本文章来给大家介绍一个PHP mysql事务回滚操作实例,有需要了解事物回滚的朋友可参考。操作方法很简单。

MYSQL中只有INNODB和BDB类型的数据表才能支持事务处理!其他的类型是不支持的!

 代码如下 复制代码
public function insertUser ($userArray){
  foreach ($userArray as $key => $value) {
   @$field  .= "$key,";
   @$content .= "'$value',";
  } 
  $field  = ereg_replace(',$', '', $field);
  $content = ereg_replace(',$', '', $content);
 
  $db = db_connect();  //连接数据库
 
  $db->autocommit(FALSE); //设置为非自动提交——事务处理
 
  $sql1  = "INSERT INTO t_user (".$field.") VALUES (".$content.")";
  $result1 = $db->query($sql1);
 
  $sql2  = "INSERT INTO t_userpost (f_username) VALUES ('".$userArray['f_username']."')";
  $result2 = $db->query($sql2);
 
  if ($result1 && $result2) {
   $db->commit();  //全部成功,提交执行结果
   echo '提交';
  } else {
   $db->rollback(); //有任何错误发生,回滚并取消执行结果
   echo '回滚';
  }
  $db->close();
}
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn