版权声明:本文为博主原创文章,未经博主允许不得转载。 https://cloud.tencent.com/developer/article/1333668
【声明】:
“www”
,而截图中不加 “www”
是因为我们备案的原因,记得只去掉 “http://”
weixinpay.php
文件到 “/ThinkPHP/Library/Vendor/Weixinpay/”
目录下 MCHID
而造成不必要的时间浪费,具体开发参照官方文档。/Application/Common/Conf/config.php
'WEIXINPAY_CONFIG' => array(
'APPID' => 'wxdxxxxxxx89', // 公众号APPID 微信支付APPID
'MCHID' => '1xxxxxxx2', // 微信支付MCHID 商户收款账号
'KEY' => 'MCxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxlW', // 微信支付KEY
'APPSECRET' => 'exxxxxxxxxxxxxxxxxxxxxxxxx7', // 公众帐号secert (公众号支付专用)
'NOTIFY_URL' => 'http://www.xxx.com/m/cartpay/notify_wx', // 接收支付状态的连接
'TOKEN' => 'zmxxx',//公众号设置的token值
),
GET
方式请求此页面
即使用 get
方式将总金额、订单号提交过来进行处理,$data
可以接收getParameters()
方法,其中标记的位置,是根据实际的业务情况而从数据库获取的,具体代码后面会有提供。 /M/View/Cart/pay.html
【提示】:
session
和 cookie
的设置都失效,仅做参考由 0 置为 1
. 【注意】:
1. 先前发现,因为微信服务的设计,会多次回调 `notify()` 以判断是否真正的支付成功,而简单的update操作是无法检测的。
2. 为了同自己的平台相关联,同理需要进行状态的判断,否则不可避免的会多次执行 `notify_wx()` 中的逻辑处理\*\*
curl_get_contents()
curl_get_contents()
html
页面中对 jQuery.js 的正确引用,pay.html
基本是从微信公众号官网直接下载的 demo
页,同时使用代码前请配置微信支付url
,且外网测试。common/function.php
中补充函数 weixinpay()
和 qrcode()
M/Order/mobilepayment.html
,即通过访问Order/wechatpaymenter
<img>
标签中显示出来,具体代码见后面的附录 wechatpaymenter()
方法。time()
代替测试。Demo
的使用,可参考文章 微信公众平台开发[3] —— 微信公众号支付功能