PHP+Mysql基于事务处理实现转账功能的方法
网络编程 2021-07-05 09:09www.168986.cn编程入门
这篇文章主要介绍了PHP+Mysql基于事务处理实现转账功能的方法,实例分析了mysql事务处理的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了PHP+Mysql基于事务处理实现转账功能的方法。分享给大家供大家参考。具体如下:
<?php header("Content-Type:text/html;charset=utf-8"); $mysqli=new mysqli("localhost","root","","test"); if(mysqli_connect_errno()) { printf("连接失败:%s<br>",mysqli_connect_error()); exit(); } $suess=TRUE; $price=8000; $result=$mysqli->query("select cash from aount where name='userA'"); while($row=$result->fetch_assoc()) { $value=$row["cash"]; echo $value; } $mysqli->automit(0); if($value>=$price){ $result=$mysqli->query("UPDATE aount set cash=cash-$price where name='userA'"); }else { echo '余额不足'; exit(); } if(!$result or $mysqli->affected_rows!=1) { $suess=FALSE; } $result=$mysqli->query("UPDATE aount set cash=cash+$price where name='userB'"); if(!result or $mysqli->affected_rows!=1){ $suess=FALSE; } if($suess) { $mysqli->mit(); echo '转账成功!'; }else { $mysqli->rollback(); echo "转账失败!"; } $mysqli->automit(1); $query="select cash from aount where name=?"; $stmt=$mysqli->prepare($query); $stmt->bind_param('s',$name); $name='userA'; $stmt->execute(); $stmt->store_result(); $stmt->bind_result($cash); while($stmt->fetch()) echo "用户userA的值为:".$cash; $mysqli->close(); ?>
数据库SQL语句如下:
create table aount{ userID smallint unsigned not null auto_increment, name varchar(45) not null, cash decimal(9,2) not null, primary key(userID) )type=InnoDB; insert into aount(name,cash) values ('userA','2000'); insert into aount(name,cash) values ('userB','10000');
希望本文所述对大家的php程序设计有所帮助。
编程语言
- 机械手焊接机器人编程 机械手焊接设备编程
- vb数据库编程实例,vb做数据库
- tiobe世界编程语言排行榜,全球编程语言排行
- 成都java编程培训 成都it编程培训中心
- 编程基础培训,编程基础知识培训
- flash游戏编程基础教程,flash游戏开发教程
- 不会英语能学编程吗 不会英语可以学程序员吗
- 爱心代码编程C语言 爱心代码编程c语言公式
- c语言编程学习入门 c语言编程快速入门
- 西门子plc编程培训 西门子plc编程培训班
- 哪里可以学编程 台州哪里可以学编程
- 少儿编程哪个好 少儿编程哪个品牌好
- 编程是什么意思,图形编程是什么意思
- c语言编程软件下载,c语言编程软件在哪下载
- java编程软件下载,java编程下载手机版
- ug编程培训学校,ug编程培训教程