2012-01-08 69 views
0

我爲X-Cart寫了一個支付模塊。
我回網址是:支付模塊退貨部分X-Cart「訂單丟失」

require './auth.php'; 

if (!func_is_active_payment('cc_mellat.php')) 
    exit; 

$rescode=$_POST['ResCode']; 
$RefID=$_POST['RefId']; 
$saleOrderId=$_POST['saleOrderId']; 
$SaleReferenceId=$_POST['SaleReferenceId']; 

$tmp = func_query_first("SELECT sessionid,param1 FROM $sql_tbl[cc_pp3_data] WHERE ref='".$saleOrderId."'"); 
$bill_output['sessid'] = $tmp['sessionid']; 

$bill_output['billmes']="RefId:".$RefId." - ResCode: ".$rescode." - SaleReferenceId:".$SaleReferenceId; 
// Approved 
if ($rescode == 0 && $is_md5) { 
    $bill_output['code'] = 1;  
// Declined 
} else { 
    echo "Error: ".$rescode; 
    $bill_output['code'] = 2;  
} 
var_dump($bill_output); 

require($xcart_dir.'/payment/payment_ccend.php'); 

,但支付的X車後說:

Order declined. 
Review your data or contact the store administrator. 

Reason: Error: Your order was lost 

問題是什麼?

回答

0

看來你使用未定義的變量$ is_md5這裏:

if ($rescode == 0 && $is_md5) { 
1

請參見我的文章here。它由於SQL錯誤而失敗,因爲xcart_cc_pp3_data字段的名稱是sessid而不是sessionid

切換到正確的字段名稱,您的訂單將被找到。 (我有相同的order not found錯誤,直到我發現&修復了SQL。)