Ecshop小京东商城微信扫码支付成功后自动跳转解决方案

2星 需积分: 10 35 下载量 151 浏览量 更新于2024-09-12 收藏 1KB TXT 举报
" Ecshop小京东商城2.73版本中实现了微信扫码支付成功后自动跳转的解决方案。" 在电商网站开发中,支付流程的顺畅性对于用户体验至关重要。 Ecshop是一个流行的开源电子商务平台,而小京东是基于Ecshop的一个二次开发版本,提供了更多的功能和定制化选项。在这个场景下,问题在于当用户通过微信扫码完成支付后,系统无法自动跳转到相应的页面,这可能给用户带来困扰,影响购物体验。 描述中提到的解决方案涉及到两个主要文件的修改:`orderFlow.php` 和 `flow.dwt`。`orderFlow.php` 是处理订单状态查询的后台脚本,而 `flow.dwt` 是前端模板文件,用于展示订单信息和支付状态。 1. **orderFlow.php** 的修改: - 首先,增加了一个判断条件,检查是否有`act`参数且其值为`GetOrder`。这表明前端正在通过AJAX请求获取订单状态。 - 接着,如果接收到POST请求并有关键词(即订单号),会执行SQL查询,从`order_info`表中获取对应订单的支付状态。 - 最后,使用JSON编码返回查询结果,供前端JavaScript处理。 2. **flow.dwt** 的修改: - 在此模板文件中,首先展示了订单号,并创建了一个带有特定ID的`span`元素,用于存储订单号以便于JavaScript获取。 - 如果订单支持在线支付,将显示支付按钮。 - 更重要的是,引入了一段JavaScript代码,用于定时查询订单状态。这段代码使用jQuery库,确保在文档加载完成后开始执行。 - `ajaxstatus`函数每4秒调用一次,获取订单状态,并通过`Ajax.call`发送到`orderFlow.php`,传递订单号作为参数。 - 当接收到的状态值为2(通常表示已支付)时,会执行一个提醒函数,告知用户订单支付成功并进行相应的跳转操作。 这个解决方案巧妙地结合了前后端的交互,利用AJAX实现异步更新订单状态,确保用户在支付成功后能够及时得知结果并进行下一步操作。特别注意的是,代码中的`pay_nameeq"°΢֧PCӿ"`表明这里特指微信扫码支付的场景,如果其他支付方式需要类似处理,可能需要相应调整代码。 这个解决方案提供了一个针对Ecshop小京东商城微信支付自动跳转的通用方法,但实际应用时可能需要根据具体的Ecshop版本和已安装的插件进行适配。在实施时,开发者应检查并修改所有必要的文件名和路径,确保与现有系统的兼容性。