我一直在为 x-cart 中的客户开发自定义定期订单脚本,我面临的问题是当定期订单(cron)触发并循环安排的订单时,订单似乎没有重置为空,它尝试使用前一个订单的 ID。我以为我解决了这个问题,但现在它使用第一个订单的详细信息作为日常流程之后所有订单的客户详细信息。
$orderids = func_place_order(stripslashes($payment_method), 'I', $order_details, @$customer_notes, array(), array(), @$delivery_notes, TRUE);
最后一个参数是一个自定义参数,这里是它的使用位置 ( $bol_ignore
) - 在func.order.php
$check_order = func_query_first("SELECT orderid FROM $sql_tbl[orders] WHERE userid='" . addslashes(@$userinfo['id']) . "' AND '" . XC_TIME . "'-date < '$mintime'");
if ($bol_ignore == FALSE) // @custom ***** code, may prevent the order from being broken?
if ($check_order) {
func_unlock('place_order');
return FALSE;
}
在它检查支付是否成功后,我们func_change_order_status()
分别调用更改状态。
我假设我必须遗漏一些东西才能 100% 清除 xcart 可能正在使用的订单、购物车和任何会话控制,然后才能处理下一个。我什x_session_reset()
至在循环中使用以防万一,并在循环开始时重置所有变量。
提前致谢。