素材牛

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

 所属分类:PHP/MySql-支付

 浏览:6461次-  下载:81次-  评论:35次-  发布时间:2017-03-12
PHP原生微信扫码支付实例源码
积分说明:注册即送5牛币,每天签到可获得5牛币,第三方账号登陆、注册直接赠送20牛币!    我要充值   更多积分说明»
素材描述:一款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则说明订单支付成功 
    } 
}

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

坐等红杏出墙来
2017年03月12日

正好需要,拿走了

回复
zhendeaini
2017年03月24日

正好要用到,雪中送炭啊

回复
Smarty
2017年04月01日

很有教学意义

回复
日破天
2017年04月04日

拿走了,谢谢分享

回复
enjy120
2017年08月01日

不错的好东西

回复
enjy120
2017年08月01日

测试OK,不错

回复
南宁网站开发
2017年08月26日

这个可以有吧

回复
南宁网站开发
2017年08月28日

东西不错

回复
华夏nan
2017年09月21日

学习了 作者辛苦了

回复
728739414
2017年09月27日

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

回复
728739414
2017年09月27日

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

回复
1471465028
2017年11月20日

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

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

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

老哥!!

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

正好需要,拿走了

回复
sjnick
2017年12月23日

好好谢谢

回复
1471465028
2018年02月10日

好好谢谢

回复
1471465028
2018年02月26日

雪中送炭啊。谢谢大佬

回复
卡神族
2018年03月06日

这个可以有吧

回复
钱掌柜徐信爱
2018年03月08日

正好需要,拿走了

回复
programmer
2018年03月14日

正好需要,拿走了

回复
D.Chen
2018年03月16日

正好需要,拿走了

回复
duanze666
2018年04月19日

这个不错!

回复
bigdog
2018年07月03日

不错的好东西

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

很好 刚好 可以用到

回复
Airan
2018年07月18日

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

回复
1471465028
2018年08月06日

谢谢打咯

回复
amulet
2018年09月07日

好东西!!!

回复
kelzch
2018年11月09日

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

回复
缔造者
2018年12月24日

这是什么源码啊

回复
qw6563032
2019年01月28日

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

回复
红色螃蟹
2019年04月28日

学习一下

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

牛币获取:可通过签到、评论、充值、发布素材获得 » 牛币充值

会员账号
会员密码
安全验证