php+mysqli事务控制实现银行转账实例
2015-01-29 15:40
886 查看
本文实例讲述了php+mysqli事务控制实现银行转账的方法。分享给大家供大家参考。具体分析如下:
事务控制,也就是说所有的语句执行成功后,才会提交。否则,如果前面有语句执行成功,而后面没有执行成功,则回滚到执行之前的状态。通过银行转账的案例来说明这个应用。一个账号转了钱出去,另一个账号必须有钱转入,这样才算成功。
代码如下:
<?php //1、创建数据库连接对象 $mysqli = new MySQLi("localhost","root","123456","liuyan"); if($mysqli->connect_error){ die($mysqli->connect_error); } $mysqli->query("set names 'GBK'"); $mysqli->autocommit(false); //首先设置autocommit为false,也就是不自动提交 $sql1 = "update account set balance=balance-2 where id=1;"; $sql2 = "update account set balance=balance+2 where id=2;"; $res1 =$mysqli->query($sql1) or die($mysqli->error); $res2 =$mysqli->query($sql2) or die($mysqli->error); if(!$res1 || !$res2){ echo "转账失败"; $mysqli->rollback();//如果有一条不成功,则回滚 }else{ $mysqli->commit();//两条语句都执行成功,则提交 echo "转账成功"; } ?>
希望本文所述对大家的php程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- php+mysqli事务控制实现银行转账实例
- PHP+Mysql基于事务处理实现转账功能的方法
- php+Mysqli利用事务处理转账问题实例
- PHP+Mysql基于事务处理实现转账功能的方法
- PHP+Mysql基于事务处理实现转账功能的方法
- php+Mysqli利用事务处理转账问题实例
- 基于MySQL的分布式事务控制方案(C#实现)
- 利用Nginx的X-Accel-Redirect头实现下载控制(附带php和rails实例)
- php 在 控制 mysql 事务中的方法
- 通过缓存中的复制延迟标记实现对PHP/MySQL的读/写的分离式控制
- 通过缓存中的复制延迟标记实现对PHP/MySQL的读/写的分离式控制
- PHP和MySQL Web开发读书笔记---使用PHP和MySQL实现安全事务
- php mysql 执行事务实例
- 解析php mysql 事务处理回滚操作(附实例)
- PHP mysql 事务处理实例
- PHP和MySQL Web开发读书笔记---使用PHP和MySQL实现安全事务
- 基于php&mysql实现聊天室功能的代码实例分享
- jQuery结合PHP+MySQL实现二级联动下拉列表[实例]
- jQuery结合PHP+MySQL实现二级联动下拉列表[实例]
- PHP+KINDEDIT+mysql+javascript实现文本编辑和文件上传功能实例