资源描述:
《网上银行支付接口》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、网上银行支付接口 网址:www. /** *YeePay易宝 */ classAlipay{ var$nodeAuthorizationURL="/app-merchant-proxy/node"; var$messageType="Buy"; var$addressFlag="0";#需要填写送货信息0:不需要1:需要 /** *输出YeePay易宝代码 * *@paramarray$product订单信息 *@paramarray$pay支付信息 *@returnstring */ functionOutCode($product,$pay){ glob
2、al$INFO; $merchantId=$pay; $keyValue=$pay; $merchantCallbackURL=$INFO./autocart/cart_?pay_id=.intval($pay); #商家设置用户购买商品的支付信息 $orderId=$product;//商家的交易定单号,此参数可选,但是不能重复 $productId=$orderId;//商品ID $amount=$product;//购买金额 $cur="CNY";//货币单位 $productDesc="";//商品描述 $productCat="";//商品种类 $sMctPr
3、operties=""; $frpId=""; //调用签名函数生成签名串 $sNewString=$this->getReqHmacString($orderId,$amount,$cur,$productId,$productCat,$productDesc,$sMctProperties,$frpId,$pay); $button= ; return$button; } /** *相应操作 * *@paramstring$_GETYeePay易宝传回字符串 *@returnbool */ functionGetDo($pay){ #以下代码和变量不需要修改
4、 #解析返回参数 $return=$this->getCallBackValue($sCmd,$sErrorCode,$sTrxId,$amount,$cur,$productId,$orderId,$userId,$MP,$bType,$svrHmac); #判断返回签名是否正确(True/False) $bRet=$this->CheckHmac($sCmd,$sErrorCode,$sTrxId,$orderId,$amount,$cur,$productId,$userId,$MP,$bType,$svrHmac,$pay); #以上代码和变量不需要修改 #校验码正确
5、if($bRet){ if($sErrorCode==1){ returntrue; } }else{ returnfalse; } } functionhmac($key,$data){ //RFC2104HMACimplementationforphp. //Createsanmd5HMAC. //EliminatestheneedtoinstallmhashtocomputeaHMAC //HackedbyLanceRushing(NOTE:Hackedmeanswritten) //需要配置环境支持iconv,否则中文参数不能正常处理 $key=iconv
6、("GB2312","UTF-8",$key); $data=iconv("GB2312","UTF-8",$data); $b=64;//bytelengthformd5 if(strlen($key)>$b){ $key=pack("H*",md5($key)); } $key=str_pad($key,$b,chr(0x00)); $ipad=str_pad(,$b,chr(0x36)); $opad=str_pad(,$b,chr(0x5c)); $k_ipad=$key^$ipad; $k_opad=$key^$opad; returnmd5($k_opad.
7、pack("H*",md5($k_ipad.$data))); } functiongetReqHmacString($orderId,$amount,$cur,$productId,$productCat,$productDesc,$sMctProperties,$frpId,$pay){ global$INFO; $merchantId=$pay; $keyValue=$pay; $merch