Opencart成功从JavaScript获得订单ID和总计
我需要在成功订单的页面上运行JavaScript,并获得两个结果:订单ID和订单总额。代码如下所示:Opencart成功从JavaScript获得订单ID和总计,javascript,php,opencart,Javascript,Php,Opencart,我需要在成功订单的页面上运行JavaScript,并获得两个结果:订单ID和订单总额。代码如下所示: //这里有一些代码 arr.push([ “创建订单”, {订单号:“*订单号*”,和:*和*} ]); 问题 我应该将脚本粘贴到哪里?如果进入成功。第三方物流究竟在哪里?如果进入header.tpl,那么如何仅在订单成功页面上运行它 我应该使用哪些变量?我已经试过了,但不起作用: {order\u id:,sum:} 另一方面,Opencart版本是1.5.6这里的问题是,在成功页面上,
//这里有一些代码
arr.push([
“创建订单”,
{订单号:“*订单号*”,和:*和*}
]);
问题
{order\u id:,sum:}
另一方面,Opencart版本是1.5.6这里的问题是,在成功页面上,所有订单数据都已经从会话变量中取消设置(删除)。这就是您的代码无法成功的原因 查看
catalog/controller/checkout/success.php
并将index()
函数的开头更改为:
public function index() {
$this->data['order_id'] = 0; // <-- NEW LINE
$this->data['total'] = 0; // <-- NEW LINE
if (isset($this->session->data['order_id'])) {
$this->data['order_id'] = $this->session->data['order_id']; // <-- NEW LINE
$this->data['total'] = $this->cart->getTotal(); // <-- NEW LINE
$this->cart->clear();
unset($this->session->data['shipping_method']);
unset($this->session->data['shipping_methods']);
unset($this->session->data['payment_method']);
unset($this->session->data['payment_methods']);
unset($this->session->data['guest']);
unset($this->session->data['comment']);
unset($this->session->data['order_id']);
unset($this->session->data['coupon']);
unset($this->session->data['reward']);
unset($this->session->data['voucher']);
unset($this->session->data['vouchers']);
}
$this->language->load('checkout/success');
这应该足够了。这里的问题是,在成功页面上,所有订单数据都已经从会话变量中取消设置(删除)。这就是您的代码无法成功的原因 查看
catalog/controller/checkout/success.php
并将index()
函数的开头更改为:
public function index() {
$this->data['order_id'] = 0; // <-- NEW LINE
$this->data['total'] = 0; // <-- NEW LINE
if (isset($this->session->data['order_id'])) {
$this->data['order_id'] = $this->session->data['order_id']; // <-- NEW LINE
$this->data['total'] = $this->cart->getTotal(); // <-- NEW LINE
$this->cart->clear();
unset($this->session->data['shipping_method']);
unset($this->session->data['shipping_methods']);
unset($this->session->data['payment_method']);
unset($this->session->data['payment_methods']);
unset($this->session->data['guest']);
unset($this->session->data['comment']);
unset($this->session->data['order_id']);
unset($this->session->data['coupon']);
unset($this->session->data['reward']);
unset($this->session->data['voucher']);
unset($this->session->data['vouchers']);
}
$this->language->load('checkout/success');
这应该足够了。前面的答案需要更新,以适应更高版本的Opencart 对于
2.2.0
$data['order_id'] = 0;
$data['total'] = 0;
and
$data['order_id'] = $this->session->data['order_id'];
$data['total'] = $this->cart->getTotal();
以前的答案需要更新,以用于Opencart的更高版本,而不是前面指出的新行 对于
2.2.0
$data['order_id'] = 0;
$data['total'] = 0;
and
$data['order_id'] = $this->session->data['order_id'];
$data['total'] = $this->cart->getTotal();
而不是前面指出的新行