PHP开发微信支付的代码分享
微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。
然后,因为在微信中是通过JS方式调用API,必须在微信后台设置支付授权目录,而且要到二级三级目录下去,这对于使用MVC框架来说,是个小问题。
使用MVC,在开发环境,url往往是native url格式,不能保证一定是带有路径/的形式
所以,比较可靠的方式,是创建实体的子文件夹,这样的化,在系统整体url方面,需要进行一些改造。
另外,最后一步,js调用时,对于 https://github.com/dodgepudding/wechat-php-sdk 这里提供的js库,在调用时,必须确保在页面加载完后触发,即WeixinJSBridgeReady的状态,因为这时才能与微信浏览器提供jsbridge进行通讯。
5.24修复
具体可看微擎中的相关代码。
<script type="text/javascript">
document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
WeixinJSBridge.invoke('getBrandWCPayRequest', {
'appId' : '<?php echo $wOpt['appId'];?>',
'timeStamp': '<?php echo $wOpt['timeStamp'];?>',
'nonceStr' : '<?php echo $wOpt['nonceStr'];?>',
'package' : '<?php echo $wOpt['package'];?>',
'signType' : '<?php echo $wOpt['signType'];?>',
'paySign' : '<?php echo $wOpt['paySign'];?>'
}, function(res) {
if(res.err_msg == 'get_brand_wcpay_request:ok') {
} else {
alert('启动微信支付失败, 请检查你的支付参数. 详细错误为: ' + res.err_msg);
}
history.go(-1);
});
}, false);
</script>
相关文章
php利用array_search与array_column实现二维数组查找
这篇文章主要介绍了php利用array_search与array_column实现二维数组查找,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-07-07
thinkphp3.x自定义Action、Model及View的简单实现方法
这篇文章主要介绍了thinkphp3.x自定义Action、Model及View的简单实现方法,结合实例形式详细分析了thinkPHP3.x自定义模型、视图及控制器的具体步骤与相关实现技巧,需要的朋友可以参考下2016-05-05


最新评论