$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');
$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'); ?>
$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://";
<?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');
$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'); }
$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; } ?>