chk_in()) { write_msg('', $mymps_global['SiteUrl'] . '/' . $mymps_global['cfg_member_logfile'] . '?url=' . urlencode(GetUrl())); } include_once MYMPS_INC . '/payment/wxnative/WxPayPubHelper.php'; $paytype = 'wxnative'; $payr = $db->getRow('SELECT * FROM ' . $db_mymps . 'payapi WHERE paytype=\'' . $paytype . '\''); WxPayConfig::$APPID = $payr['appid']; WxPayConfig::$MCHID = $payr['payuser']; WxPayConfig::$KEY = $payr['paykey']; WxPayConfig::$APPSECRET = $payr['appkey']; $orderQuery = new OrderQuery_pub(); $orderQuery->setParameter('out_trade_no', $out_trade_no); $orderQueryResult = $orderQuery->getResult(); if ($orderQueryResult['return_code'] == 'FAIL') { echo 0; exit(); } else if ($orderQueryResult['result_code'] == 'FAIL') { echo 0; exit(); } else { $i = $_SESSION['i']; $i--; $_SESSION['i'] = $i; switch ($orderQueryResult['trade_state']) { case SUCCESS: $flag = 1; weixin_do($out_trade_no, $orderQueryResult); break; case REFUND: $flag = '2'; break; case NOTPAY: $flag = '3'; break; case CLOSED: $flag = '4'; break; case PAYERROR: $flag = '5'; break; default: $flag = '6'; break; } echo $flag; exit(); } is_object($db) && $db->Close(); $mymps_global = NULL; ?>