www.gusucode.com > ShopEx481 & PHPWind 整合版码程序 > plugins/payment/pay.cncard.php
<?php require('paymentPlugin.php'); class pay_cncard extends paymentPlugin{ var $name = '云网在线支付';//云网在线支付 var $logo = 'CNCARD'; var $version = 20070902; var $charset = 'gb2312'; var $applyUrl = 'http://www.cncard.net/api/agentreg.asp'; var $submitUrl = 'https://www.cncard.net/purchase/getorder.asp'; var $submitButton = 'http://img.alipay.com/pimg/button_alipaybutton_o_a.gif'; ##需要完善的地方 var $supportCurrency = array("CNY"=>"CNY"); var $supportArea = array("AREA_CNY"); var $intro=''; var $applyProp = array("postmethod"=>"get","aid"=>"10054","sign"=>"79cccba5af191e88fb9edd3949796053"); var $orderby = 10; var $head_charset = "gb2312"; function toSubmit($payment){ $merId = $this->getConf($payment["M_OrderId"], 'member_id'); $ikey = $this->getConf($payment["M_OrderId"], 'PrivateKey'); $payment['M_Currency'] = "0"; $orderdate = date("Ymd",$payment["M_Time"]);//date("Ymd",$order->M_Time); $md5string = md5($merId.$payment["M_OrderId"].$payment["M_Amount"].$orderdate."0"."1".$this->callbackUrl."0"."0".$ikey); $return['c_mid'] = $merId; $return['c_order'] = $payment['M_OrderId'];//$order->M_OrderId; $return['c_name'] = $payment['R_Name']; $return['c_address'] = $payment['R_Address']; $return['c_tel'] = $payment['R_Telephone']; $return['c_post'] = $payment['R_Postcode']; $return['c_email'] = $payment["R_Email"];//$order->R_Email; $return['c_orderamount'] = $payment["M_Amount"];//$order->M_Amount; $return['c_ymd'] = $orderdate; $return['c_moneytype'] = $payment["M_Currency"];//$order->M_Currency; $return['c_retflag'] = "1"; $return['c_returl'] = $this->callbackUrl; $return['c_language'] = "0"; $return['notifytype'] = "0"; $return['c_signstr'] = $md5string; return $return; } function callback($in,&$paymentId,&$money,&$message,&$tradeno){ $c_order = $in["c_order"]; //订单号 $c_orderamount = $in["c_orderamount"]; //订单金额 $c_succmark = $in["c_succmark"]; //Y-成功 N-失败 $c_cause = $in["c_cause"]; //支付失败时为失败原因 $c_signstr = $in["c_signstr"]; $tradeno = $in['c_transnum']; $ikey = $this->getConf($c_order, 'PrivateKey'); //-----------重新计算md5的值-------------------------------------------- $content= md5($in["c_mid"].$in["c_order"].$in["c_orderamount"].$in["c_ymd"].$in["c_transnum"].$in["c_succmark"].$in["c_moneytype"].$in["c_memo1"].$in["c_memo2"].$ikey); $paymentId=$c_order; if ($c_signstr!=$content){ $message = '签名认证失败,请立即与商店管理员联系'; return PAY_ERROR; }else{ if($c_succmark == "Y"){ $message="支付成功"; return PAY_SUCCESS; }else{ $message = '支付失败,请立即与商店管理员联系'."($c_cause)"; return PAY_FAILED; } } } function getfields(){ return array( 'member_id'=>array( 'label'=>'客户号', 'type'=>'string' ), 'PrivateKey'=>array( 'label'=>'私钥', 'type'=>'string' ) ); } function applyForm($agentfield){ $tmp_form.='<a href="javascript:void(0)" onclick="document.applyForm.submit()">立即注册</a>'; $tmp_form.="<form name='applyForm' method='".$agentfield['postmethod']."' action='http://top.shopex.cn/recordpayagent.php' target='_blank'>"; foreach($agentfield as $key => $val){ $tmp_form.="<input type='hidden' name='".$key."' value='".$val."'>"; } $tmp_form.="</form>"; return $tmp_form; } } ?>