// +----------------------------------------------------------------------
// | Author: 左边 (加群:366504956(刚建,欢迎) 交流thinkphp下微信开发)
// +----------------------------------------------------------------------
public function Index(){
//商户基本信息,可以写死在WxPay.Config.php里面,其他详细参考WxPayConfig.php
define('APPID','wx9dc408cb04cd6d2d');
define('MCHID', '1709319401');
define('KEY', 'e10adc3949ba59abbe56e757f20f883e');
define('APPSECRET', '8c97c84a34f4be1d46bd35b7e51df86a');
vendor('Pay.JSAPI');
$tools = new \JsApiPay();
$openId = 'oql2ZwUwTvQsD73jTZuzRc2KFYEA';
$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> 附件 修改为vendor下直接调用,原版微信支付V3 .zip ( 283.2 KB 下载:1064 次 )
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。