thinkphp3.2.3对接新版支付宝
问题描述
效果图片如下:
新版支付宝签名验证都是封装好的,只需要配置和调用
public function pay(){//商户订单号,商户网站订单系统中唯一订单号,必填$out_trade_no = ’27201’.date(’YmdHis’,time());//订单名称,必填$proName = trim($_POST[’WIDsubject’]);//付款金额,必填$total_amount = ’0.01’;//trim($_POST[’WIDtotal_amount’]);//商品描述,可空$body = ’27201’;//trim($_POST[’WIDbody’]);Vendor(’Alipay.aop.AopClient’);Vendor(’Alipay.aop.request.AlipayTradePagePayRequest’);//请求$c = new AopClient();$config = C(’alipay’);$c->gatewayUrl = 'https://openapi.alipay.com/gateway.do';$c->appId = $config[’app_id’];$c->rsaPrivateKey = $config[’merchant_private_key’];$c->format = 'json';$c->charset= 'UTF-8';$c->signType= 'RSA2';$c->alipayrsaPublicKey = $config[’alipay_public_key’];$request = new AlipayTradePagePayRequest();$request->setReturnUrl($config[’return_url’]);$request->setNotifyUrl($config[’notify_url’]);$request->setBizContent('{' . ' 'product_code':'FAST_INSTANT_TRADE_PAY',' . ' 'subject':'$proName',' . ' 'out_trade_no':'$out_trade_no',' . ' 'total_amount':$total_amount,' . ' 'body':'$body'' . ' }');$result = $c->pageExecute ($request);$model = M(’c_house_order’);$data = array( ’product_name’=>$proName, ’order_num’=>$out_trade_no, ’total_amount’=>$total_amount, ’description’=>$body, ’user_id’=>1, ’add_time’=>NOW_TIME, ’up_time’=>NOW_TIME);$model->add($data);//输出echo $result; }
异步通知,直接在你异步通知的方法里面写逻辑,用$_POST去接收支付宝端传过来的参数,进行相对应的数据库插入或者更新。
问题解答
回答1:不错 不错 不错 不错 不错 不错 不错 不错 不错 不错 不错
回答2:写的不错 学编程就来PHP中文网
相关文章:
1. 编辑成功不显示弹窗2. 哭辽 求大佬解答 控制器的join方法怎么转模型方法3. Navicat for mysql 中以json格式储存的数据存在大量反斜杠,如何去除?4. mysql - 数据库表中,两个表互为外键参考如何解决5. mysql储存json错误6. mysql - 怎么生成这个sql表?7. mysql - 表名称前缀到底有啥用?8. sql语句 - 如何在mysql中批量添加用户?9. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE语法实现存在即更新应该使用哪个标签?10. 怎么php怎么通过数组显示sql查询结果呢,查询结果有多条,如图。
