微信支付和支付寶支付一直回調問題

  在作支付開發時,發現一個問題,就是說異步回調會一直不停的回調,這樣會致使有些業務邏輯的問題,好比說本人在作的一個項目,支付成功後,會有一系列的業務,好比會員升級,錢包判斷等功能,若是一直回調進行處理那出現問題的,那麼如何解決了,也挺簡單的,就是在處理完看,你給支付寶或微信進行一個輸出,告訴支付寶或微信,我已處理完成,那麼就不會一直在出現回調sql

支付寶很簡單,只要輸出  echo success;便可,而微信則須要return 一個xml 數據 微信

<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>

//支付寶
  $sql="select id,is_pay,mem_id from `order` where  ordernum='{$out_trade_no}'"; //更新訂單
        $order = $dosql->GetOne($sql); //若是已支付過,就無需再進行遊戲規則 1表明你也走過這個流程
        if($order['is_pay']===1){ echo "success"; }
$order = $dosql->GetOne("select id,is_pay,mem_id from `order` where  ordernum={$data['out_trade_no']}"); //微信支付回覆
        if ($order['is_pay']==1) { return '<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>'; }

主要思想就是先判斷下是否已支付過,若是已支付過,就直接告訴支付寶或微信,已支付。無需再進行異步回調。異步