<?php include_once dirname(__FILE__) . '/../../config/config.inc.php'; include_once dirname(__FILE__) . '/../../init.php'; include_once dirname(__FILE__) . '/greenworld_allpay.php'; include_once dirname(__FILE__) . '/../../classes/OrderHistory.php'; $checkTemp = new greenworld_allpay(); // 商店設定在ECBank管理後台的交易加密私鑰 $key = $checkTemp->getEncryptionCode(); $amount = $checkTemp->getAmount(Tools::getValue("od_sob")); // 組合字串 $serial = trim($_POST['process_date'] . $_POST['process_time'] . $_POST['gwsr']); // 回傳的交易驗證壓碼 $amt = trim($_POST['amount']); // ECBank 驗證Web Service網址 // 取得驗證結果 (也可以使用curl) $ecbank_gateway = 'https://credit.allpay.com.tw/g_recheck.php'; // 組合字串 //echo "<hr>".$checkcode."<hr>"; $post_parm = 'key=' . $_POST["rech_key"] . '&serial=' . $serial . '&amt=' . $amt; //echo "<hr>".$post_parm; /* $fp = fopen('data.txt', 'w'); fwrite($fp, $post_parm); fclose($fp); */ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $ecbank_gateway); curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
session_destroy(); } else { $_SESSION["checkStep"] = "1"; echo Module::display(_iMODULE_NAME_ALLPAY_, 'validationOrder.tpl'); } } else { if ($_SESSION["checkStep"] == "1" && $check == "1") { $CheckPay->validateOrder((int) $cart->id, 1, $inttotal, $CheckPay->displayName, NULL, array(), NULL, false, $customer->secure_key); $newOrderStatusId = "1"; $history = new OrderHistory(); $history->id_order = (int) $CheckPay->currentOrder; $history->changeIdOrderState((int) $newOrderStatusId, (int) $CheckPay->currentOrder); $history->addWithemail(); $URL = $CheckPay->getBaseURL(); $PostData .= "mer_id=" . $CheckPay->getShopCode(); $PostData .= "&enc_key=" . $CheckPay->getEncryptionCode(); $PostData .= "&payment_type=" . $CheckPay->getPaymentType(); $PostData .= "&amt=" . $inttotal; $PostData .= "&od_sob=" . $CheckPay->currentOrder; $PostData .= "&return_url=" . rawurlencode("http://" . $_SERVER["HTTP_HOST"] . $CheckPay->path . "doFictitiousDetonate.php"); // 建立CURL連線 $ch = curl_init(); // 設定擷取的URL網址 curl_setopt($ch, CURLOPT_URL, $URL); curl_setopt($ch, CURLOPT_HEADER, false); //將curl_exec()獲取的訊息以文件流的形式返回,而不是直接輸出。 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //設定CURLOPT_POST 為 1或true,表示要用POST方式傳遞 curl_setopt($ch, CURLOPT_POST, 0); //CURLOPT_POSTFIELDS 後面則是要傳接的POST資料。 curl_setopt($ch, CURLOPT_POSTFIELDS, $PostData);