素材牛VIP会员

PHP原生微信扫码支付实例源码

 所属分类:PHP/MySql-支付

 浏览:7536次-  下载:84次-  评论:39次-  更新时间:2017-03-12
PHP原生微信扫码支付实例源码
积分说明:注册即送15牛币,每日签到可获得5牛币,成为VIP会员可永久免积分下载!   充值积分   充值会员   更多说明»
素材描述:一款PHP原生代码写的微信扫码支付,不基于任何框架,完全手写
 标签:扫码微信支付

详细介绍

扫码支付只要授权域名对就OK,本地是无法测试。跟openid也没有关系,所以跟支付授权目录页没关系。

微信商户信息配置地址:weixinpay\lib\WxPay.Config.php 第25行

const APPID = 'wx422126b0b6bbfcfc'; // 绑定支付的APPID(必须配置,开户邮件中可查看) 
const MCHID = '1349825901';         // 商户号(必须配置,开户邮件中可查看) 
const KEY = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';  //商户支付密钥,参考开户邮件设置(必须配置,登录商户平台自行设置) 
const APPSECRET = '45843e705995a12106155f4c26f716dc';  //APPSECRET:公众帐号secert(仅JSAPI支付的时候需要配置, 登录公众平台,进入开发者中心可设置)

微信扫码支付定义参数

$order_no = date("YmdHis") . rand(1000, 9999); //支付订单号 
$order_money = 0.01; //订单金额 元 
$url_notify = $url . "notify.php"; //微信回调地址

微信第三方推送支付成功信息地址notify.php

$order_no = $simple['out_trade_no'];//商户订单号 
$third_id = $simple['transaction_id'];//微信流水号 
$pay_money = $simple['total_fee'];//实际支付金额 
if ($order_no) {//若是支付成功 ,订单状态state=1表示已支付成功 
    $query = mysql_query("UPDATE `order` SET `state` = '1',update_time='" . time() . "',trade_no='".$third_id."' WHERE `order_no` ='" . $order_no . "'"); 
}

每三秒检测支付是否成功

<script> 
    changeOrderStatues();//检测订单是否支付成功 
    function changeOrderStatues() {  
        var order_no = $("#order_no").val(); 
 
        $.post("check_order.php", {order_no: order_no}, function(data) { 
            if (data > 0) { 
                //订单返回值大于0表示支付成功 
                alert("感谢您赞助,付款成功"); 
                location.href = "order_detail.php?order_no=" + order_no + ""; //支付成功后跳转到订单详情页 
            } 
        }) 
        setTimeout("changeOrderStatues()", 3000); 
    } 
</script>

检测订单是否支付成功check_oder.php

$order_no = isset($_POST['order_no']) ? $_POST['order_no'] : ""; 
if ($order_no) { 
    $query = mysql_query("SELECT id FROM `order` WHERE order_no = '" . $order_no . "' AND state = 1 LIMIT 1"); 
    $row = mysql_fetch_array($query); 
    if ($row) { 
        echo $row['id'];//若是返回值,大于0则说明订单支付成功 
    } 
}

讨论这个素材(39)回答他人问题或分享使用心得会奖励牛币

坐***来  
2017年03月12日

正好需要,拿走了

回复
zh***ni  
2017年03月24日

正好要用到,雪中送炭啊

回复
Sm***ty  
2017年04月01日

很有教学意义

回复
日***天  
2017年04月04日

拿走了,谢谢分享

回复
en***20  
2017年08月01日

不错的好东西

回复
en***20  
2017年08月01日

测试OK,不错

回复
南***发  
2017年08月26日

这个可以有吧

回复
南***发  
2017年08月28日

东西不错

回复
华***n  
2017年09月21日

学习了 作者辛苦了

回复
72***14  
2017年09月27日

这个很好,以前也找了好久!!!

回复
72***14  
2017年09月27日

这个很好,以前也找了好久!!!。

回复
14***28  
2017年11月20日

支付成功后之母给它跳转??

素材牛小二:用JS几秒钟一个轮查,判断这个订单状态是否变为已支付,不是就继续轮查,是的话就跳转或提醒已支付成功
回复
14***28  
2017年11月20日

支付成功后之母给它跳转??

老哥!!

素材牛小二:二维码页面打开JS就在后台自动轮查,时时判断这个支付是否已经支付。如果手机扫码支付成功后这个订单状态就会变成已支付,轮查的结果就是已支付,然后自动跳转,反之则不跳转继续轮查
14***28:谢谢!
14***28:在回调文件里大哥你这个where ‘’order_on‘ =’ $order_on‘’我的这个条件怎么成立的。。
回复
两***窗  
2017年12月18日

正好需要,拿走了

回复
sj***ck  
2017年12月23日

好好谢谢

回复
14***28  
2018年02月10日

好好谢谢

回复
14***28  
2018年02月26日

雪中送炭啊。谢谢大佬

回复
卡***族  
2018年03月06日

这个可以有吧

回复
钱***爱  
2018年03月08日

正好需要,拿走了

回复
pr***er  
2018年03月14日

正好需要,拿走了

回复
D.***en  
2018年03月16日

正好需要,拿走了

回复
du***66  
2018年04月19日

这个不错!

回复
bi***og  
2018年07月03日

不错的好东西

回复
何***从  
2018年07月05日

很好 刚好 可以用到

回复
Ai***an  
2018年07月18日

没有返回信息   扫码支付后不跳转是因为什么

回复
14***28  
2018年08月06日

谢谢打咯

回复
am***et  
2018年09月07日

好东西!!!

回复
ke***ch  
2018年11月09日

好东西,谢谢分享!!!!!!!!!!!

回复
缔***者  
2018年12月24日

这是什么源码啊

回复
qw***32  
2019年01月28日

微信支付官方Demo中,PHP版本是最全的,也是直接拿来就能用的版本,但凡好好看官方示例的就不回来下载你的这个。

回复
红***蟹  
2019年04月28日

学习一下

回复
lb***bj  
2019年06月27日

谢谢分享!!!

回复
ka***88  
2019年06月29日

测试OK,不错

回复
am***et  
2019年06月29日

好东西 好东西 好东西~!

回复
Wh***at  
2019年07月15日

kuoyi

回复
 文明上网,理性发言!   😉 阿里云幸运券,戳我领取
我的牛币余额:0 已下载次数:84
所需牛币:10 开始下载

牛币获取:签到、评论、充值    » 在线充值(10牛币=1元)