微信支付的demo融进我的框架的时候,我的是OOP的写法,官方demo是原生的写法,我写了个方法去预处理微信支付,第一步获取code的时候 发给微信的 rediect_url重定向地址 返回调用我这预处理方法的时候,发现SESSION不能用了,这导致了不能回到获取订单信息的方法里进执行支付的模板了
代码如下:
//进入订单支付模板
function dopay($order='')
{
if($pay=='weixin')
{
$this->weixinpay()
1 2 3 4 | <code>}
$this ->dispaly( 'dopay.html' );
</code>
|
Copy after login
Copy after login
}
function weixinpay()
{
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <code> if (!isset( $_GET [ 'code' ]))
{
$url = $jsApi ->createOauthUrlForCode(WxPayConf_pub::JS_API_CALL_URL);
Header( "Location: $url" );
}
else
{
$code = $_GET [ 'code' ];
$jsApi ->setCode( $code );
$openid = $jsApi ->getOpenId();
}
就没法调用模板了,问题来了 index -> weixinpay(微信预处理) -> 显示支付模板
weixinpay 去调用了微信,由于需要获取code,不得不调用自己,但是调用后,SESSION失效,如何去index方法呢?
注意:index方法是需要order_id参数的,不如报错
</code>
|
Copy after login
Copy after login
}
回复内容:
微信支付的demo融进我的框架的时候,我的是OOP的写法,官方demo是原生的写法,我写了个方法去预处理微信支付,第一步获取code的时候 发给微信的 rediect_url重定向地址 返回调用我这预处理方法的时候,发现SESSION不能用了,这导致了不能回到获取订单信息的方法里进执行支付的模板了
代码如下:
//进入订单支付模板
function dopay($order='')
{
if($pay=='weixin')
{
$this->weixinpay()
1 2 3 4 | <code>}
$this ->dispaly( 'dopay.html' );
</code>
|
Copy after login
Copy after login
}
function weixinpay()
{
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <code> if (!isset( $_GET [ 'code' ]))
{
$url = $jsApi ->createOauthUrlForCode(WxPayConf_pub::JS_API_CALL_URL);
Header( "Location: $url" );
}
else
{
$code = $_GET [ 'code' ];
$jsApi ->setCode( $code );
$openid = $jsApi ->getOpenId();
}
就没法调用模板了,问题来了 index -> weixinpay(微信预处理) -> 显示支付模板
weixinpay 去调用了微信,由于需要获取code,不得不调用自己,但是调用后,SESSION失效,如何去index方法呢?
注意:index方法是需要order_id参数的,不如报错
</code>
|
Copy after login
Copy after login
}
微信js公众号支付步骤: 1.后端生成js package 2.前端发起支付 3.支付完成后页面js callback 4.后端callback ; 中间不涉及楼主说的code操作