PHP会话控制实例分析
421
2024-01-10
本文实例为大家分享了thinkphp整合微信支付代码,供大家参考,具体内容如下
下载:支付SDK
将微信支付SDK放在第三方类库Vendor下面,请切记把WxPay.Config.php里面的商户信息修改为您的公众号信息,以避免造成资金的流失。
php端代码
public function pay(){ //商户基本信息,可以写死在WxPay.Config.php里面,其他详细参考WxPayConfig.php vendor('Pay.JSAPI'); $tools = new JsApiPay(); $openid = $tools->GetOpenid(); $Out_trade_no=date('YHis').rand(100,1000); $Total_fee='测试'; $Body='啥也不说'; $Total_fee=1; $input = new WxPayUnifiedOrder(); $input->SetBody($Body); $input->SetOut_trade_no($Out_trade_no); $input->SetTotal_fee($Total_fee); $input->SetNotify_url("http://xx.xxx.com/pay/notify.php"); $input->SetTrade_type("JSAPI"); $input->SetOpenid($openId); $order = WxPayApi::unifiedOrder($input); $this->jsApiParameters = $tools->GetJsApiParameters($order); $this->display(); }
HTML端代码
<!doctype html> <head> <meta charset="UTF-8"> <title>微信安全支付</title> <meta name="keywords" content="" /> <meta name="HandheldFriendly" content="True"> <meta name="MobileOptimized" content="320"> <meta name="format-detection" content="telephone=no"> <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" /> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="0" /> <meta http-equiv="cleartype" content="on"> <meta id="viewport" name="viewport" content="width=320, initial-scale=1.0,maximum-scale=1.0, user-scalable=0," /> <script type="text/javascript"> //调用微信JS api 支付 function jsApiCall() { WeixinJSBridge.invoke( 'getBrandWCPayRequest', {$jsApiParameters}, function(res){ WeixinJSBridge.log(res.err_msg); if(res.err_msg == 'get_brand_wcpay_request:cancel') { alert("您已取消了此次支付"); return; } else if(res.err_msg == 'get_brand_wcpay_request:fail') { alert("支付失败"); return; } else if(res.err_msg == 'get_brand_wcpay_request:ok') { alert("支付成功!");//跳转到订单页面 } else { alert("未知错误"+res.error_msg); return; } } ); } function callpay() { if (typeof WeixinJSBridge == "undefined"){ if( document.addEventListener ){ document.addEventListener('WeixinJSBridgeReady', jsApiCall, false); }else if (document.attachEvent){ document.attachEvent('WeixinJSBridgeReady', jsApiCall); document.attachEvent('onWeixinJSBridgeReady', jsApiCall); } }else{ jsApiCall(); } } </script> </head> <body> <button type="button" class="btn btn-danger btn-lg btn-block" onclick="callpay()"> 确认支付 </button> </body> </html>
就这么简单。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持绿夏网。
#免责声明#
本站[绿夏技术导航]提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序或内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件[admin@lxwl520.com]与我们联系进行删除处理。敬请谅解!