PHP开发微信支付的代码分享


Posted in PHP onMay 25, 2014

微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。

然后,因为在微信中是通过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 相关文章推荐
php 将bmp图片转为jpg等其他任意格式的图片
Jun 29 PHP
批量获取memcache值并按key的顺序返回的实现代码
Jun 14 PHP
php的大小写敏感问题整理
Dec 29 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(八)
Jun 23 PHP
PHP数组和explode函数示例总结
May 08 PHP
基于PHP实现商品成交时发送短信功能
May 11 PHP
PHP简单实现无限级分类的方法
May 13 PHP
php安装ssh2扩展的方法【Linux平台】
Jul 20 PHP
Yii框架的路由配置方法分析
Sep 09 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
Jan 22 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
Apr 04 PHP
PHP执行普通shell命令流程解析
Aug 24 PHP
php定时计划任务与fsockopen持续进程实例
May 23 #PHP
PHP+Mysql+Ajax+JS实现省市区三级联动
May 23 #PHP
PHP解析html类库simple_html_dom的转码bug
May 22 #PHP
浅谈discuz密码加密的方式
May 22 #PHP
PHP函数strip_tags的一个bug浅析
May 22 #PHP
PHP学习笔记之字符串编码的转换和判断
May 22 #PHP
PHP+memcache实现消息队列案例分享
May 21 #PHP
You might like
php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
2011/11/02 PHP
php 伪造ip以及url来路信息方法汇总
2014/11/25 PHP
PHP simplexml_import_dom()函数讲解
2019/02/03 PHP
用javascript编写的第一人称射击游戏
2007/02/25 Javascript
捕获关闭窗口的脚本
2009/01/10 Javascript
js判断一个元素是否为另一个元素的子元素的代码
2012/03/21 Javascript
js获取通过ajax返回的map型的JSONArray的方法
2014/01/09 Javascript
jquery+php实现搜索框自动提示
2014/11/28 Javascript
drag-and-drop实现图片浏览器预览
2015/08/06 Javascript
JavaScript的Backbone.js框架入门学习指引
2016/05/07 Javascript
AngularJS自定义控件实例详解
2016/12/13 Javascript
移动端日期插件Mobiscroll.js使用详解
2016/12/19 Javascript
详解JS对象封装的常用方式
2016/12/30 Javascript
详解angularJs中自定义directive的数据交互
2017/01/13 Javascript
JavaScript中匿名函数的递归调用
2017/01/22 Javascript
微信小程序之网络请求简单封装实例详解
2017/06/28 Javascript
ubuntu编译nodejs所需的软件并安装
2017/09/12 NodeJs
浅析从vue源码看观察者模式
2018/01/29 Javascript
深入了解JavaScript代码覆盖
2019/06/13 Javascript
[01:37]PWL S2开团时刻DAY1&2——这符有毒
2020/11/20 DOTA
Python线程详解
2015/06/24 Python
python中常用的九种预处理方法分享
2016/09/11 Python
Python高级用法总结
2018/05/26 Python
用Python实现将一张图片分成9宫格的示例
2019/07/05 Python
Django 实现xadmin后台菜单改为中文
2019/11/15 Python
Python中pass的作用与使用教程
2020/11/13 Python
公司企业表扬信
2014/01/11 职场文书
十岁生日父母答谢词
2014/01/18 职场文书
2014升学宴答谢词
2014/01/26 职场文书
安全生产管理合理化建议书
2014/03/12 职场文书
农村门前三包责任书
2014/07/25 职场文书
幼师小班个人总结
2015/02/12 职场文书
淮海战役观后感
2015/06/11 职场文书
深度学习小工程练习之垃圾分类详解
2021/04/14 Python
【海涛解说】暗牧也疯狂,牛蛙成配角
2022/04/01 DOTA
mysql数据库隔离级别详解
2022/06/16 MySQL