Home  >  Article  >  Backend Development  >  PHP interface code of Yibao online payment platform, Yibao online payment_PHP tutorial

PHP interface code of Yibao online payment platform, Yibao online payment_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 09:52:101395browse

The PHP interface code of Yibao online payment platform, Yibao online payment

This code refers to the last 5 lectures from Han Shunping 149 video. Friends who need to learn can refer to this code

This is a test picture:

The following is the code part:

PHP interface code of Yibao online payment platform, Yibao online payment_PHP tutorial 1 php 2 3 4 function HmacMd5($data, $key) 5 { 6 7 //The environment needs to be configured to support iconv, otherwise Chinese parameters cannot be processed normally 8 $key = iconv("GB2312", "UTF-8", $key); 9 $data = iconv("GB2312", "UTF-8", $data); 10 $b = 64; 11 if (strlen($key) > $b) { 12 $key = pack("H*", md5($key)); 13 } 14 $key = str_pad($key, $b, chr(0x00)); 15 $ipad = str_pad('', $b, chr(0x36)); 16 $opad = str_pad('', $b, chr(0x5c)); 17 $k_ipad = $key ^ $ipad; 18 $k_opad = $key ^ $opad; 19 return md5($k_opad . pack("H*", md5($k_ipad . $data))); 20 }21 //We asked Yibao payment how to generate a signature string 22 //Pass each request parameter in as $data: $key is the key assigned by Yibao to the merchant 23 24 ?> common.php PHP interface code of Yibao online payment platform, Yibao online payment_PHP tutorial 1 2 3 4 5
6 7 81213141516171819202122232425
9 Order number: 10 Payment amount: 11
Please select the payment bank
China Merchants Bank ICBC Agricultural Bank of China China Construction Bank
26
27 pay.php PHP interface code of Yibao online payment platform, Yibao online payment_PHP tutorial 1 2 3 4 5 php 6 include 'common.php'; 7 // Here we get the information submitted by the user 8 9 // 1. Get the order number 10 $p0_Cmd = "Buy"; 11 $p1_MerId = "10001126856"; 12 $p2_Order = $_REQUEST['p2_Order']; 13 $p3_Amt = $_REQUEST['p3_Amt']; 14 $p4_Cur = "CNY"; 15 // Product Name 16 $p5_Pid = ""; 17 $p6_Pcat = ""; // Product Type 18 $p7_Pdesc = ""; // Product introduction 19 // Just after Yibao payment is successful, information will be returned to the url 20 $p8_Url = "http://loaclhost/FUCKPHP/onlinezhifu/res.php"; 21 $p9_SAF = "0"; // Shipping Address 22 $pa_MP = ""; // Additional introduction 23 $pd_FrpId = $_REQUEST['pd_FrpId']; // Payment Channel 24 $pr_NeedResponse = "1"; // Response mechanism 25 // We splice the request parameters one by one (the order is very important when splicing!!) 26 $data=""; 27 $data=$data.$p0_Cmd; 28 $data=$data.$p1_MerId; 29 $data=$data.$p2_Order; 30 $data=$data.$p3_Amt; 31 $data=$data.$p4_Cur; 32 $data=$data.$p5_Pid; 33 $data=$data.$p6_Pcat; 34 $data=$data.$p7_Pdesc; 35 $data=$data.$p8_Url; 36 $data=$data.$p9_SAF; 37 $data=$data.$pa_MP; 38 $data=$data.$pd_FrpId; 39 $data=$data.$pr_NeedResponse; 40 41 $merchantKey ="69cl522AV6q613Ii4W6u8K6XuW8vM1N6bFgyv769220IuYe9u37N4y7rI4Pl"; 42 // hmac是签名串,是用于易宝和商家互相确认的关键字 43 // 这里我们需要使用算法来生成(md5-hmac算法) 44 $hmac = HmacMd5($data,$merchantKey); 45 ?> 46 你的订单号是:echo $p2_Order; ?>支付的金额是echo $p3_Amt; ?> 47 48
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
65 payConfirm.php PHP interface code of Yibao online payment platform, Yibao online payment_PHP tutorial 1 php 2 include 'common.php'; 3 //获取从易宝支付网关返回的信息 4 $p1_MerId = "10001126856"; 5 $r0_Cmd = $_REQUEST['r0_Cmd']; 6 $r1_Code = $_REQUEST['r1_Code']; 7 $r2_TrxId = $_REQUEST['r2_TrxId']; 8 $r3_Amt = $_REQUEST['r3_Amt']; 9 $r4_Cur = $_REQUEST['r4_Cur']; 10 $r5_Pid = $_REQUEST['r5_Pid']; 11 $r6_Order = $_REQUEST['r6_Order']; 12$r7_Uid = $_REQUEST['r7_Uid']; 13 $r8_MP = $_REQUEST['r8_MP']; 14 $r9_BType = $_REQUEST['r9_BType']; 15 $hmac = $_REQUEST['hmac']; 16 17 // 拼接 18 $res_src = ""; 19 $res_src = $res_src . $p1_MerId; 20 $res_src = $res_src . $r0_Cmd; 21 $res_src = $res_src . $r1_Code; 22 $res_src = $res_src . $r2_TrxId; 23 $res_src = $res_src . $r3_Amt; 24 $res_src = $res_src . $r4_Cur; 25 $res_src = $res_src . $r5_Pid; 26 $res_src = $res_src . $r6_Order; 27 $res_src = $res_src . $r7_Uid; 28 $res_src = $res_src . $r8_MP; 29 $res_src = $res_src . $r9_BType; 30 $merchantKey = "69c1522AV6q613Ii4W6u8K6XuW8vM1N6bFgyv769220IuYe9u37N4y7rI4P1"; 31 // 对返回的结果进行MD5-hmac加密处理,和返回的hmac签名串比较 32 if (HmacMd5($res_src, $merchantKey) == $hmac) { 33 if ($r1_Code == 1) { 34 if ($r9_BType == 1) { 35 echo '交易成功!'; 36 echo '订单号为' . $r6_Order . '支付成功!' . '所付金额是' . $r3_Amt . '易宝支付订单号' . $r2_TrxId; 37 echo '
浏览器重定向'; 38 } elseif ($r9_BType == 2) { 39 echo 'success'; 40 echo '
交易成功!'; 41 echo '
服务器点对点通讯'; 42 } 43 } 44 } else { 45 echo '签名被篡改了'; 46 } 47 48 ?> res.php

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1010337.htmlTechArticle易宝网上支付平台的PHP接口代码,易宝网上支付 本代码参照自韩顺平149讲视频后5讲,需要学习的朋友可以参考本代码 这是测试图片: 以下...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn