>백엔드 개발 >PHP 문제 >PHP로 은행 간 이체를 구현하는 방법

PHP로 은행 간 이체를 구현하는 방법

藏色散人
藏色散人원래의
2021-11-16 10:20:102062검색

PHP에서 은행 간 이체를 구현하는 방법: 1. 데이터베이스 연결 개체를 생성합니다. 2. 자동 커밋을 false로 설정합니다. 3. PHP+mysqli 트랜잭션 제어를 통해 은행 이체를 구현합니다.

PHP로 은행 간 이체를 구현하는 방법

이 기사의 운영 환경: windows7 시스템, PHP7.1 버전, DELL G3 컴퓨터

php 은행 간 이체를 구현하는 방법은 무엇입니까?

은행 송금 구현을 위한 php+mysqli 거래 제어 예시

이 글에서는 주로 은행 송금 구현을 위한 php+mysqli 거래 제어를 소개합니다. 이 예시에서는 거래 제어의 원리와 거래 롤백의 사용 기술을 분석합니다.

트랜잭션 제어, 즉 모든 명세서는 성공적으로 실행될 때까지 제출되지 않습니다. 그렇지 않은 경우 이전 명령문은 성공적으로 실행되었으나 후속 명령문은 성공적으로 실행되지 못한 경우 실행 전 상태로 롤백됩니다. 이 응용 프로그램은 은행 송금의 경우를 통해 설명됩니다. 한 계좌에서 돈을 이체하는 경우, 돈이 성공한 것으로 간주되려면 다른 계좌로 돈이 이체되어야 합니다.

코드는 다음과 같습니다.

<?php
//1、创建数据库连接对象
$mysqli = new MySQLi("localhost","root","123456","liuyan");
if($mysqli->connect_error){
 die($mysqli->connect_error);
}
$mysqli->query("set names &#39;GBK&#39;");
 
$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 Video Tutorial"

위 내용은 PHP로 은행 간 이체를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.