苹果CMS微信充值示例代码教程
2025-03-05 共人阅读在苹果CMS会员支付功能中,当用户选择微信支付后,系统会进入微信支付页面,通过二维码展示支付信息,用户使用微信扫码后即可完成订单支付。
该页面对应的模板文件为:
html/user/payment_weixin.html
payment_weixin.html主要用于显示订单编号、订单金额以及微信支付二维码,同时通过 JavaScript 定时查询订单状态,在检测到支付成功后自动跳转到会员中心。
苹果CMS微信支付示例
<form method="post" target="_blank" action="{:url('user/gopay')}">
<input type="hidden" name="order_id" value="{$info.order_id}">
<input type="hidden" name="order_code" value="{$info.order_code}">
<div class="line40">
<p><span class="xiang">订单编号:</span>{$order.order_code}</p>
<p><span class="xiang">订单金额:</span>{$order.order_price}元</p>
<p><img src="{:url('user/qrcode')}?data={$payment.code_url|urlencode}" width="150" height="150"/></p>
<p>打开微信,扫码支付</p>
</div>
</form>
<script>
function check(){
$.get("{:url('user/order_info')}" + '?order_id={$order.order_id}', function(data){
if(data.info.order_status == 1){
alert('支付完成,即将跳转到会员中心');
window.location.href = "{:url('user/index')}";
}
});
}
$(function(){
setInterval(function(){check()}, 5000); //5秒查询一次支付是否成功
})
</script>代码功能说明
订单信息
代码通过隐藏表单字段保存订单相关信息,其中 {$info.order_id} 为订单ID,{$info.order_code} 为订单编号。
页面同时使用 {$order.order_code} 显示订单编号,并通过 {$order.order_price} 显示当前订单金额。
微信支付二维码
微信支付二维码通过以下代码生成:
<img src="{:url('user/qrcode')}?data={$payment.code_url|urlencode}" width="150" height="150"/>其中 {$payment.code_url} 为微信支付生成的二维码地址数据,通过 urlencode 进行URL编码后传递给 user/qrcode,由页面生成可供用户扫描的二维码。
自动检测支付状态
页面中的 JavaScript 会通过 user/order_info 接口查询当前订单状态。当返回的 order_status 等于 1 时,表示订单已经完成支付。
setInterval(function(){check()}, 5000);这段代码设置每5秒检查一次订单状态。检测到支付成功后,会弹出提示,并自动跳转到会员中心。
支付成功后的跳转
当系统检测到订单支付完成后,执行以下代码:
alert('支付完成,即将跳转到会员中心');
window.location.href = "{:url('user/index')}";用户确认提示后,页面会跳转到苹果CMS会员中心页面。
苹果CMS微信支付页面修改注意事项
修改文件前建议备份原始的
payment_weixin.html。不要随意修改订单ID、订单编号以及支付二维码相关变量,否则可能导致支付页面无法正常工作。
如果修改了订单状态检测逻辑,需要确认后台返回的订单状态值与模板判断条件一致。
支付状态查询间隔可以根据实际需求调整,但不建议设置过短,以免产生过多请求。
如果二维码无法显示,应检查微信支付配置、
{$payment.code_url}是否正常生成以及user/qrcode页面是否可以正常访问。
- 整体架构与底层运行逻辑彻底梳理5热度
- 二次开发完整教程4热度
- 视频模板制作常用函数62热度
- 会员积分记录页面调用代码64热度
- 苹果cms内置ajax数据接口说明95热度
- 会员权限列表模板调用教程65热度
- 专题搜索教程86热度
- 更换模板报错解决方法109热度
- 自定义标签使用教程98热度
- 视频筛选调用教程101热度
