日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

看到網上的帝國CMS第三方支付接口資源很少,站長圖庫就分享一篇關于帝國cms二次開發整合第三方支付接口教程,我們只分享大致思路,可以讓你在開發中少走彎路,教程僅供參考學習。

1、首先我們需要知道自己找的第三方支付平臺的支付提交發起方法和支付成功后回調方法,每個支付平臺的方法都不同。所以在開發前,最好先去仔細查看支付平臺的文檔,最好支付平臺有SDK參考。

2、一般的支付發起方法都是POST 或 GET方法,提交到接口需要哪些字段,我們就調用哪些字段給接口就行,平臺一般大致需要的字段有下面這些,整理給大家。


帝國CMS二次開發整合第三方支付接口教程


支付方式:

$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);

然后我們還需要一個觸發發起提交的表單

<form method="get" name="gopay" id="gopay" style="display:none" action="平臺提交地址">
    <input name="orderId" id="orderId" type="text" value="<?=$payorderId?>" />
</form>
<script>
document.getElementById('gopay').submit();
</script>

4、最后就是回調處理了,同樣也非常簡單,直接就可以用帝國CMS原版的回調處理方法。

include('../payfun.php');
$pr=$empire->fetch1("select paymoneytofen,payminmoney from {$dbtbpre}enewspublic limit 1");
 
$orderid=$_GET['trade_no']; //支付訂單
$ddno=$_GET['out_trade_no'];    //網站的訂單號
$money=$_GET['total_fee'];
$fen=floor($money)*$pr[paymoneytofen];
 
if($phome=='PayToFen')//購買點數
{
    $paybz='購買點數: '.$fen;
    PayApiBuyFen($fen,$money,$paybz,$orderid,$user[userid],$user[username],$paytype);
}
elseif($phome=='PayToMoney')//存預付款
{
    $paybz='存預付款';
    PayApiPayMoney($money,$paybz,$orderid,$user[userid],$user[username],$paytype);
}
elseif($phome=='ShopPay')//商城支付
{
    include('../../data/dbcache/class.php');
    $ddid=(int)getcvar('paymoneyddid');
    $paybz='商城購買 [!--ddno--] 的訂單(ddid='.$ddid.')';
    PayApiShopPay($ddid,$money,$paybz,$orderid,'','',$paytype);
}
elseif($phome=='BuyGroupPay')//購買充值類型
{
    include("../../data/dbcache/MemberLevel.php");
    $bgid=(int)getcvar('paymoneybgid');
    PayApiBuyGroupPay($bgid,$money,$orderid,$user[userid],$user[username],$user[groupid],$paytype);
}

我們只需要處理官方方法里面的變量,把他們換成你自己的回調變量就可以了。


分享到:
標簽:帝國CMS二次開發 第三方支付接口
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定