當前位置:編程學習大全網 - 網站源碼 - 支付寶及時付款怎麽用php事務處理

支付寶及時付款怎麽用php事務處理

妳用的框架還是原生??

原生和框架代碼不同? 但是大概意思都是壹樣的。例如原生的pdo吧:

<?php?

$pdo?=?new?pdo("mysql:host=localhost;dbname=mydb","root","root",?array(PDO::ATTR_AUTOCOMMIT=>0));

try{

$pdo->beginTransaction();//開啟事務處理

$price=500;

$sql="update?xx?set?price=price-{$price}?where?id=1";

$affected_rows=$pdo->exec($sql);

if(!$affected_rows)

thrownewPDOException("失敗");//那個錯誤拋出異常

$sql="update?zhanghao?set?price=price+{$price}?where?id=3";

$affected_rows=$pdo->exec($sql);

if(!$affected_rows)

thrownewPDOException("失敗");

echo?"交易成功!";

$pdo->commit();//交易成功就提交

}catch(PDOException?$e){

echo?$e->getMessage();

$pdo->rollback();

}

/*這是原生pdo?的事務壹個簡單實例

*至於框架就更簡單了?壹般model類都有定義

*具體流程意思就是?開啟事務?事務出錯就回滾?rollback();?事務成功就提交?commit();

*/

>

  • 上一篇:PHPCMS v9裏面,推薦位IDposid的值是如何確定的?是自定義的還是官方定義好的?求原理。
  • 下一篇:創建免費tp,手機短信驗證碼不能收到?
  • copyright 2024編程學習大全網