TP3.2.3 接入支付寶
阿新 • • 發佈:2017-12-26
public rim sets 通知 http sta sdk ins ali
TP3.2.3 接入支付寶
項目接入支付寶支付了,在做這個給我的感覺是,方便 ,畢竟是老馬的產品是吧,
話不多說 , 首先我們先找到官方的SDK ,不想去找的小夥伴復制此鏈接 https://docs.open.alipay.com/194/105201/
然後解壓 如圖
這我們只需要將這些文件放到Vendor 文件夾中的Alipay裏就可以了,然後就是配置信息了
如圖
App_Id 在你的支付寶開發平臺可以得到 ,私匙和公匙可以支付寶開放平臺的一個生成器可以得到,但是要先生成私匙,在用私匙生成公匙,然後去頭去掉換行就好
然後在就是調用了
//支付寶充值操作 public function pay() { $config = C(‘Alipay‘); //異步通知地址 $config[‘notify_url‘] = ""; //同步跳轉 $config[‘return_url‘] = ""; Vendor(‘Alipay.pagepay.service.AlipayTradeService‘); Vendor(‘Alipay.pagepay.buildermodel.AlipayTradePagePayContentBuilder‘); //商戶訂單號,商戶網站訂單系統中唯一訂單號,必填 $out_trade_no = trim(I(‘post.WIDout_trade_no‘)); //訂單名稱,必填 $subject = trim(I(‘post.WIDsubject‘)); //付款金額,必填 $total_amount = trim(I(‘post.WIDtotal_amount‘)); //商品描述,可空 $body = trim(I(‘post.WIDbody‘)); $ud = session(‘users.uid‘); $data = array( ‘uid‘=>$ud, //用戶id ‘win_code‘=>$out_trade_no, //商戶訂單號 ‘winsubject‘=>$subject, //訂單名稱 ‘wintotal_amount‘=>$total_amount, //付款金額 ‘winbody‘=>$body, //商品描述 ‘state‘=>‘zfb‘, //支付方式 ‘status‘=>‘0‘, //是否支付 ‘ordertime‘=>time() //交易時間 ); M("pay_record")->add($data); // 保存交易信息 //構造參數 $payRequestBuilder = new \AlipayTradePagePayContentBuilder(); $payRequestBuilder->setBody($body); $payRequestBuilder->setSubject($subject); $payRequestBuilder->setTotalAmount($total_amount); $payRequestBuilder->setOutTradeNo($out_trade_no); $aop = new \AlipayTradeService($config); $response = $aop->pagePay($payRequestBuilder,$config[‘return_url‘],$config[‘notify_url‘]); //輸出表單 // var_dump($response); }
然後異步的時候要註意要重跳轉之類的 比如是cookie session 判斷用戶是否登錄,沒登錄就跳轉,這些都不可以 ,甚至都不能出現,以免出錯 ,在下就是在這裏坑了好一會
最後還是客服提醒我的。
搞定收工 , 祝大家早日成為大牛
TP3.2.3 接入支付寶