网上的帝国CMS第三方支付接口资源很少,一淘模板就分享一篇关于帝国cms二次开发整合第三方支付接口教程,我们只分享大致思路,可以让你在开发中少走弯路,教程仅供参考学习。
1、首先我们需要知道自己找的第三方支付平台的支付提交发起方法和支付成功后回调方法,每个支付平台的方法都不同。所以在开发前,最好先去仔细查看支付平台的文档,最好支付平台有SDK参考。
2、一般的支付发起方法都是POST 或 GET方法,提交到接口需要哪些字段,我们就调用哪些字段给接口就行,平台一般大致需要的字段有下面这些,整理给大家。
支付方式:
- $php_Self = substr($_SERVER['PHP_SELF'],strripos($_SERVER['PHP_SELF'],"/")+1);
- if ($php_Self=='BuyGroupPay.php'){
- $phome='BuyGroupPay';
- }
异步或同步回调地址:
- $paykey=$payr['paykey'];
- $notify_url=$PayReturnUrlQz."你的回调地址/payend.php";
- $return_url=$PayReturnUrlQz."你的回调地址/payend.php";
支付金额:
- $price=$money;
支付订单号:
- $orderid=$ddno?$ddno:time();
- esetcookie("checkpaysession",$orderid,0);
支付方式:
- if ($payr['paytype']=='wxpay'){
- $channel='1';
- }else{
- $channel='2';
- }
sign签名验证:
- $sign=md5($orderid.$phome.$channel.$price.$paykey);
3、有了提交内容,我们就需要发起提交了,大致的POST或GET方法如下,大家也可以自己网上找。
- $pay_url='平台提交地址';
- $parameter=array(
- 'payId' => $orderid,
- 'param' => $phome,
- 'type' => $channel,
- 'price' => $price,
- 'sign' => $sign,
- 'notifyUrl' => $notify_url,
- 'returnUrl' => $return_url
- );
- function list_url($url,$data){
- $data=json_encode($data);
- $headerArray =array("Content-type:application/json;charset='utf-8'","Accept:application/json");
- $curl = curl_init();
- curl_setopt($curl, CURLOPT_URL, $url);
- curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
- curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);
- curl_setopt($curl, CURLOPT_POST, 1);
- curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
- curl_setopt($curl,CURLOPT_HTTPHEADER,$headerArray);
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
- $result = curl_exec($curl);
- curl_close($curl);
- return $result;
- }
- $pay_data=json_decode(list_url($pay_url,$parameter),true);
然后我们还需要一个触发发起提交的表单
你可能想看:
发表评论
共有[ 1 ]人发表了评论