function execPayment($cart, $additionInfo) { global $flag; $neworder = new neworder(); $gatewayUrl = $neworder->getGatewayUrl(); $mycurrency = new Currency($cart->id_currency); $postData = buildNameValueList($neworder, $cart, $mycurrency, $additionInfo); $result = payment_submit($gatewayUrl, $postData); if ($result == false) { return false; } $resultObject = json_decode($result, TRUE); if ($resultObject["status"] != "0000") { $resultObject["orderNo"] = substr($postData["OrderID"], 8); $resultObject["amount"] = $postData["Amount"] / 100; $resultObject["orderCurrency"] = $mycurrency->iso_code; } return $resultObject; }
} if (isset($_POST['validateCreditCard']) && Tools::getRequest('validateCreditCard') == 'connect') { if (!$cookie->isLogged()) { Paylog::msg(0, "101", "用户未登录"); die(json_encode(array("isError" => "YES", "msg" => "Payment failed!, Response Code:101"))); } if (!isset($cart)) { if (!isset($cookie->id_cart) || !isset($cookie->id_user)) { Paylog::msg(0, "102", "检测不到id_cart或者id_user"); die(json_encode(array("isError" => "YES", "msg" => "Payment failed!, Response Code:102"))); } $cart = new Cart($cookie->id_cart); } $additionInfo = array('CardPAN' => $_POST['neworder_cardNo'], 'CVV2' => $_POST['neworder_cardSecurityCode'], 'ExpirationMonth' => $_POST['neworder_cardExpireMonth'], 'ExpirationYear' => $_POST['neworder_cardExpireYear']); $paymentid = (int) $_POST['neworder_paymentid']; $neworder = new neworder(); if ($cart->id_user == 0 or $cart->id_address == 0) { Paylog::msg($cart->id, "103", "用户ID为0或者地址ID为0或者支付模块未启用"); die(json_encode(array("isError" => "YES", "msg" => "Payment failed!, Response Code:103"))); } $payResultJson = execPayment($cart, $additionInfo); if (!$payResultJson) { //支付过程提交请求失败. Paylog::msg($cart->id, "201", "支付请求没有连接到服务器"); die(json_encode(array("isError" => "YES", "msg" => "Payment failed!, Response Code:201"))); } $status = $payResultJson['status']; $siteOrderNo = $payResultJson["orderNo"]; $amount = $payResultJson["amount"]; $currCode = $payResultJson["orderCurrency"]; $errorMessage = $payResultJson["msg"];