【微信开发】PC端 微信扫码支付成功之后自动跳转

场景: PC端   微信扫码支付

结果: 支付成功 自动跳转

 

实现思路: 

 支付二维码页面,写ajax请求支付状态,请求到结果,无论成功还是失败,都跳转到相应的结果页面

 

具体实现方法:

html部分:

支付结果状态设定: 0 未支付  1 支付成功 2 支付失败

【微信开发】PC端 微信扫码支付成功之后自动跳转
<input type="hidden"   id="order_id"   value="<?php echo $order_id;?>">
<script type="text/javascript">
function pay_status(){ var order_id = $("#order_id").val(); $.ajax({ url:'http://' + window.location.host+ '/home/cart/pay_status_check', dataType:'json', type:'post', data:{'order_id':order_id}, success:function(data){ if(data == '1' ){ window.clearInterval(int); //销毁定时器 setTimeout(function(){ //跳转到结果页面,并传递状态 window.location.href="http://"+window.location.host+"/home/cart/pay_result?pay_status=success"; },1000) }else if(data =='2'){ window.clearInterval(int); //销毁定时器 setTimeout(function(){ //跳转到结果页面,并传递状态 window.location.href="http://"+window.location.host+"/home/cart/pay_result?pay_status=fail"; },1000) } }, error:function(){ alert("error"); }, }); } //启动定时器 var int=self.setInterval(function(){pay_status()},1000); </script>
【微信开发】PC端 微信扫码支付成功之后自动跳转

 

 

PHP 部分:

【微信开发】PC端 微信扫码支付成功之后自动跳转
   //支付状态检测
    public function pay_status_check(){
        $order_id = I("order_id");
        $result = M('table')->where("order_id = $order_id")->find();
        echo $result['pay_status'];
    }
【微信开发】PC端 微信扫码支付成功之后自动跳转

 

基础功能就这些,如果想效果好看一点,可以再加一些样式,比如:支付成功,加一个对号的动画!

转载:https://www.cnblogs.com/richerdyoung/p/6811600.html

上一篇:PHP开发之微信公众号中进行支付宝支付(二)


下一篇:WEB安全新玩法 [10] 防范竞争条件支付漏洞