} else { if ($trade_status == 'TRADE_SUCCESS') { //判断该笔订单是否在商户网站中已经做过处理 //如果没有做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详细,并执行商户的业务程序 //如果有做过处理,不执行商户的业务程序 //注意: //该种交易状态只在一种情况下出现——开通了高级即时到账,买家付款成功后。 //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); $order_sn = trim(substr($out_trade_no, 0, 13)); $log_id = get_order_id_by_sn($order_sn); //只发一次 $sql = "select pay_status from " . $hhs->table('order_info') . " where order_sn='{$order_sn}' "; $pay_status = $db->getOne($sql); if ($pay_status != 2) { pay_team_action($order_sn); } order_paid($log_id); echo "success"; //请不要修改或删除 } } } //——请根据您的业务逻辑来编写程序(以上代码仅作参考)—— ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// } else { //验证失败 echo "fail"; //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); }
//log文件路径 $log_->log_result($log_name, "【接收到的notify通知】:\n" . $xml . "\n"); if ($notify->checkSign() == TRUE) { if ($notify->data["return_code"] == "FAIL") { //此处应该更新一下订单状态,商户自行增删操作 $log_->log_result($log_name, "【通信出错】:\n" . $xml . "\n"); } elseif ($notify->data["result_code"] == "FAIL") { //此处应该更新一下订单状态,商户自行增删操作 $log_->log_result($log_name, "【业务出错】:\n" . $xml . "\n"); } else { $order = $notify->getData(); $transaction_id = $order["transaction_id"]; //微信订单号 $orsn = $order["out_trade_no"]; $odid = get_order_id_by_sn($orsn); //确保只发一次 $sql = "select pay_status from " . $hhs->table('order_info') . " where order_sn='{$orsn}' "; $pay_status = $db->getOne($sql); order_paid($odid); $sql = "update " . $GLOBALS['hhs']->table('order_info') . " set transaction_id='{$transaction_id}' where order_sn='{$orsn}' "; $GLOBALS['db']->query($sql); //确保只发一次 if ($pay_status != 2) { pay_team_action($orsn); } //代付 $sql = "select * from " . $hhs->table('order_info') . " where order_sn='" . $orsn . "'"; $order_info = $db->getRow($sql); if ($order_info['share_pay_type'] > 0) { $sql = "update " . $hhs->table('share_pay_info') . " set is_paid=1 where order_id=" . $order_info['order_id']; $db->query($sql);