SetTransaction_id($transaction_id); $result = WxPayApi::orderQuery($input); Log::DEBUG("query:" . json_encode($result)); if(array_key_exists("return_code", $result) && array_key_exists("result_code", $result) && $result["return_code"] == "SUCCESS" && $result["result_code"] == "SUCCESS") { Log::DEBUG("已进入"); $attach=$result['attach']; $out_trade_no=$result['out_trade_no']; $fee=$result['total_fee']; $transaction_id=$result['transaction_id']; $total_fee=$fee*0.01; if(function_exists('mysqli_close')){ $link = new mysqli("127.0.0.1","","",""); if($link){ $link->query("set names utf8"); $result = $link->query("select * from cmf_user_charge where orderno='{$out_trade_no}' and money='{$total_fee}' and status='0' and type='2'"); Log::DEBUG("select * from cmf_user_charge where orderno='{$out_trade_no}' and money='{$total_fee}' and status='0' and type='2'"); $row = $result->fetch_assoc(); if($row){ $link->query("update cmf_user set coin=coin+{$row['coin']} where id='$row[touid]'"); $link->query("update cmf_user_charge set status='1',trade_no='{$transaction_id}' where id={$row['id']}"); Log::DEBUG("支付成功"); }else{ Log::DEBUG($out_trade_no.' 订单信息不存在'); } }else{ Log::DEBUG("数据库链接失败"); } }else{ $link = mysql_connect("127.0.0.1","",""); if($link){ mysql_select_db("",$link); mysql_query("set names utf8"); $result = mysql_query("select * from cmf_user_charge where orderno='{$out_trade_no}' and money='{$total_fee}' and status='0' and type='2'"); Log::DEBUG("select * from cmf_user_charge where orderno='{$out_trade_no}' and money='{$total_fee}' and status='0' and type='2'"); $row = mysql_fetch_assoc($result); $str = json_encode($row); if($row){ mysql_query("update cmf_user set coin=coin+{$row['coin']} where id='$row[touid]'"); mysql_query("update cmf_user_charge set status='1',trade_no='{$transaction_id}' where id={$row['id']}"); Log::DEBUG("支付成功"); }else{ Log::DEBUG($out_trade_no.' 订单信息不存在'); } }else{ Log::DEBUG("数据库链接失败"); } } return true; } return false; } //重写回调处理函数 public function NotifyProcess($data, &$msg) { Log::DEBUG("call back:" . json_encode($data)); $notfiyOutput = array(); if(!array_key_exists("transaction_id", $data)){ $msg = "输入参数不正确"; return false; } //查询订单,判断订单真实性 if(!$this->Queryorder($data["transaction_id"])){ $msg = "订单查询失败"; return false; } return true; } } Log::DEBUG("begin notify"); $notify = new PayNotifyCallBack(); $notify->Handle(false);