$isLocked = $_REQUEST["isLocked"];
$feeAmt = $_REQUEST["feeAmt"];
$respCode = $_REQUEST["respCode"];
$VerficationCode = $INI['gopay']['code'];
$signValue = $_REQUEST["signValue"];
$orderId = preg_replace('/_/', '-', $merOrderNum);
$str = "tranCode=[{$tranCode}]merchantID=[{$merchantID}]merOrderNum=[{$merOrderNum}]tranAmt=[{$tranAmt}]ticketAmt=[{$ticketAmt}]tranDateTime=[{$tranDateTime}]currencyType=[{$currencyType}]merURL=[{$merURL}]customerEMail=[{$customerEMail}]authID=[{$authID}]orgOrderNum=[{$orgOrderNum}]orgtranDateTime=[{$orgtranDateTime}]orgtranAmt=[{$orgtranAmt}]orgTxnType=[{$orgTxnType}]orgTxnStat=[{$orgTxnStat}]msgExt=[{$msgExt}]virCardNo=[{$virCardNo}]virCardNoIn=[{$virCardNoIn}]tranIP=[{$tranIP}]isLocked=[{$isLocked}]feeAmt=[{$feeAmt}]respCode=[{$respCode}]VerficationCode=[{$VerficationCode}]";
$newSign = MD5($str);
@(list($_, $order_id, $city_id, $_) = explode('-', $orderId, 4));
if (Table::Fetch('pay', $orderId)) {
    die('SUCCESS');
}
if ($newSign == $signValue && $respCode == '0000') {
    /* charge */
    if ($_ == 'charge') {
        @(list($_, $user_id, $create_time, $_) = explode('-', $orderId, 4));
        ZFlow::CreateFromCharge($tranAmt, $user_id, $create_time, 'gopay', $tranCode);
        Session::Set('notice', "国付宝充值{$tranAmt}元成功!");
        redirect(WEB_ROOT . '/credit/index.php');
        die('success');
    }
    /* end charge */
    $currency = 'CNY';
    $service = 'gopay';
    $bank = '国付宝';
    ZOrder::OnlineIt($order_id, $orderId, $tranAmt, $currency, $service, $bank, $tranCode);
    //Session::Set('notice', "购买成功!");
    redirect(WEB_ROOT . "/order/pay.php?id={$order_id}");
    die('success');
}
include template('order_return_error');
Exemple #2
0
$v_moneytype = trim($_POST['v_moneytype']); //订单实际支付币种    
$remark1   = trim($_POST['remark1' ]);      //备注字段1
$remark2   = trim($_POST['remark2' ]);     //备注字段2
$v_md5str  = trim($_POST['v_md5str' ]);   //拼凑后的MD5校验值  

/* 重新计算md5的值 */
$text = "{$v_oid}{$v_pstatus}{$v_amount}{$v_moneytype}{$key}";
$md5string = strtoupper(md5($text));

/* 判断返回信息,如果支付成功,并且支付结果可信,则做进一步的处理 */
if ($v_md5str == $md5string) {
	list($_, $order_id, $city_id, $_) = explode('-', $v_oid, 4);
	if($v_pstatus=="20") {

		/* charge */
		if ( $_ == 'charge' ) {
			@list($_, $user_id, $create_time, $_) = explode('-', $v_oid, 4);
			ZFlow::CreateFromCharge($v_amount, $user_id, $create_time, 'chinabank');
			die('ok');
		}
		/* end charge */
		$currency = 'CNY';
		$service = 'chinabank';
		$bank = mb_convert_encoding($v_pmode,'UTF-8','GBK');
		ZOrder::OnlineIt($order_id, $v_oid, $v_amount, $currency, $service, $bank);
		die('ok');
	} 
}
die('error');
?>
Exemple #3
0
$payment_currency = $_POST['mc_currency'];
$txn_id = $_POST['txn_id'];
$receiver_email = $_POST['receiver_email'];
$payer_email = $_POST['payer_email'];
if (eregi("VERIFIED", $result)) {
    $out_trade_no = $item_number;
    $total_fee = $payment_amount;
    @(list($_, $order_id, $city_id, $_) = explode('-', $out_trade_no, 4));
    if ($_ == 'charge') {
        @(list($_, $user_id, $create_time, $_) = explode('-', $out_trade_no, 4));
        ZFlow::CreateFromCharge($total_fee, $user_id, $create_time, 'paypal');
    } else {
        $currency = $payment_currency;
        $service = 'paypal';
        $bank = 'PayPal';
        ZOrder::OnlineIt($order_id, $out_trade_no, $total_fee, $currency, $service, $bank);
    }
}
function fsockPost($url, $data)
{
    //Parse url
    $web = parse_url($url);
    //build post string
    foreach ($data as $i => $v) {
        $postdata .= $i . "=" . urlencode($v) . "&";
    }
    $postdata .= "cmd=_notify-validate";
    //Set the port number
    if ($web['scheme'] == "https") {
        $web['port'] = "443";
        $ssl = "ssl://";
Exemple #4
0
<?php
/**
 * 异步处理
 * @author abei<*****@*****.**>
 */
require_once(dirname(dirname(dirname(__FILE__))) . '/app.php');
import('qalipay');
$alipayNotify = new QAlipayNotify($INI['qalipay']);
$verify_result = $alipayNotify->verifyNotify();

if($verify_result) {
	//$notify_data = $alipayNotify->decrypt($_POST['notify_data']);
	$doc = new DOMDocument();
	$doc->loadXML($_POST['notify_data']);
	
	if( ! empty($doc->getElementsByTagName( "notify" )->item(0)->nodeValue) ) {
		//商户订单号
		$out_trade_no = $doc->getElementsByTagName( "out_trade_no" )->item(0)->nodeValue;
		//支付宝交易号
		$trade_no = $doc->getElementsByTagName( "trade_no" )->item(0)->nodeValue;
		//交易状态
		$trade_status = $doc->getElementsByTagName( "trade_status" )->item(0)->nodeValue;
		$total_fee = $doc->getElementsByTagName( "total_fee" )->item(0)->nodeValue;
		DB::Insert('alipay_log',array('value'=>$total_fee.$out_trade_no.$trade_no.$trade_status));	
		if($trade_status == 'TRADE_FINISHED') {
			@list($_, $order_id, $city_id, $_) = explode('-', $out_trade_no, 4);
			if (Table::Fetch('pay', $out_trade_no)) die('success');
			$currency = 'CNY';
			$service = 'alipay';
			$bank = '支付宝';
			$order = Table::Fetch('order',$order_id);
            /* end charge */
            $currency = 'CNY';
            $service = 'yeepay';
            $bank = '易宝';
            ZOrder::OnlineIt($order_id, $r6_Order, $r3_Amt, $currency, $service, $bank);
            redirect(WEB_ROOT . "/order/pay.php?id={$order_id}");
        } else {
            if ($r9_BType == "2") {
                //如果需要应答机制则必须回写流,以success开头,大小写不敏感.
                /* charge */
                if ($_ == 'charge') {
                    @(list($_, $order_id, $create_time, $_) = explode('-', $r6_Order, 4));
                    $service = 'yeepay';
                    if (ZFlow::CreateFromCharge($r3_Amt, $order_id, $create_time, $service)) {
                        Session::Set('notice', "在线充值{$v_amount}元成功!");
                    }
                    redirect(WEB_ROOT . '/credit/index.php');
                }
                /* end charge */
                $currency = 'CNY';
                $service = 'yeepay';
                $bank = '易宝';
                ZOrder::OnlineIt($order_id, $r6_Order, $r3_Amt, $currency, $service, $bank);
                //redirect(WEB_ROOT . "/order/pay.php?id={$order_id}");
                ob_end_clean();
                die('SUCCESS');
            }
        }
    }
}
die('ILLEGAL ORDER INFOMATION');
Exemple #6
0
$url_param_str = $_GET;



$orderseq = $url_param_str['ORDERSEQ'];
$uptranseq = $url_param_str['UPTRANSEQ'];
$orderamount = $url_param_str['ORDERAMOUNT'];
$retncode = $url_param_str['RETNCODE'];
$retninfo = $url_param_str['RETNINFO'];
$trandate = $url_param_str['TRANDATE'];
$sign = $url_param_str['SIGN'];

$str = "UPTRANSEQ=".$uptranseq."&MERCHANTID=".$mid."&ORDERSEQ=".$orderseq."&ORDERAMOUNT=".$orderamount."&RETNCODE=".$retncode."&RETNINFO=".$retninfo."&TRANDATE=".$trandate."&KEY=".$datkey;

$mac = md5($str);
if(strtoupper($mac) == $sign){
	
	list($_, $order_id, $_, $_) = explode('z', $orderseq, 4);
		
	$currency = 'CNY';
	$service = 'bestpay';
	$bank = '翼支付'; 
					
	//Order::OnlineIt($order_id, $orderseq, $orderamount, $currency, $service, $bank,$uptranseq);
	ZOrder::OnlineIt($order_id, $orderseq, $orderamount, $currency, $service, $bank,$uptranseq);
	Session::Set('notice', '恭喜您下单成功!');
	redirect("../order.php?id={$order_id}");		
}else{
	var_dump($url_param_str);	
}
if ($signtype == "2") {
    $md5key = $INI['sdopay']['sec'];
    $mac2 = md5($signString . "|" . $md5key);
    $ok = strtoupper($mac) == strtoupper($mac2);
}
@(list($_, $order_id, $city_id, $_) = explode('-', $orderid, 4));
if (Table::Fetch('pay', $orderid)) {
    die('OK');
}
//echo $order_id;
//exit;
if ($_ == 'charge') {
    if ($ok == 1) {
        @(list($_, $user_id, $create_time, $_) = explode('-', $orderid, 4));
        ZFlow::CreateFromCharge($amount, $user_id, $create_time, 'sdopay', $serialno);
        die("OK");
        //必须输出且只能输出"OK"
    }
}
if ($ok == 1) {
    $currency = 'CNY';
    $service = 'sdopay';
    $bank = '盛付通';
    ZOrder::OnlineIt($order_id, $orderid, $amount, $currency, $service, $bank, $serialno);
    die('OK');
    //必须输出且只能输出"OK"
} elseif ($ok == 0) {
    die('bad');
} else {
    die('ugly, error checking signature');
}
Exemple #8
0
$sign = $return['SIGN'];



list($_, $order_id, $city_id, $_) = explode('z', $orderseq, 4);
if (Table::Fetch('pay', $orderseq)){
	redirect(WEB_ROOT . "/order/pay.php?id={$order_id}");
};

$mac = md5("UPTRANSEQ=".$uptranseq."&MERCHANTID=".$mid."&ORDERID=".$orderseq."&PAYMENT=".$orderamount."&RETNCODE=".$retncode."&RETNINFO=".$retninfo."&PAYDATE=".$trandate."&KEY=".$datkey);
if(strtoupper($mac) == $sign){
	
	if($retncode == '0000'){

		//	翼支付网关平台交易流水号
		$out_no = $return['UPTRANSEQ'];
		$currency = 'CNY';
		$service = 'bestpay';	
		$bank = '翼支付';	
		$orderamount = $orderamount/100;
		ZOrder::OnlineIt($order_id, $orderseq, $orderamount, $currency, $service, $bank,$out_no);
		redirect(WEB_ROOT . "/order/pay.php?id={$order_id}");
	}else{
		echo "error";
	}
}else{
	echo $mac;
	echo "<br/>";
	echo $sign;
}
?>