PHP + Mysql implements the transfer function based on transaction processing, and mysql processes transactions. PHP + Mysql implements the transfer function based on transaction processing. mysql transaction processing this article describes how PHP + Mysql implements the transfer function based on transaction processing. I would like to share with you how PHP + Mysql transfers funds based on transaction processing and mysql transaction processing.
This article describes how PHP + Mysql transfers funds based on transaction processing. Share it with you for your reference. The details are as follows:
<? Php header ("Content-Type: text/html; charset = utf-8"); $ mysqli = new mysqli ("localhost", "root", "", "test "); if (mysqli_connect_errno () {printf ("connection failed: % s
", Mysqli_connect_error (); exit () ;}$ success = TRUE; $ price = 8000; $ result = $ mysqli-> query ("select cash from account where name = 'usera '"); while ($ row = $ result-> fetch_assoc ()) {$ value = $ row ["cash"]; echo $ value ;}$ mysqli-> autocommit (0); if ($ value >=$ price) {$ result = $ mysqli-> query ("UPDATE account set cash = cash-$ price where name = 'usera '");} else {echo 'insufficient balance '; exit ();} if (! $ Result or $ mysqli-> affected_rows! = 1) {$ success = FALSE;} $ result = $ mysqli-> query ("UPDATE account set cash = cash + $ price where name = 'userb '"); if (! Result or $ mysqli-> affected_rows! = 1) {$ success = FALSE;} if ($ success) {$ mysqli-> commit (); echo 'transfer successful! ';} Else {$ mysqli-> rollback (); echo "transfer failed! ";}$ Mysqli-> autocommit (1); $ query =" select cash from account 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 "user userA value :". $ cash; $ mysqli-> close ();?>
The Database SQL statement is as follows:
create table account{ 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 account(name,cash) values ('userA','2000');insert into account(name,cash) values ('userB','10000');
I hope this article will help you with php programming.
The example in this article describes how PHP + Mysql transfers funds based on transaction processing. Share it with you for your reference...