TP3.2.3 接入支付宝
Posted 尘埃
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TP3.2.3 接入支付宝相关的知识,希望对你有一定的参考价值。
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 接入支付宝的主要内容,如果未能解决你的问题,请参考以下文章