在opencart模板的checkout部分的payment_method.tpl
中,我添加了一个名为(和Id也是)“cheque_number
”的输入。
在checkout.tpl
中,我修改了发送AJAX请求的jQuery代码,以便新输入也附加到当前包装的数据,因此与其他输入一起发送到控制器。
但是,我不知道我应该在控制器中做什么(我认为payment_method/validate
,将新输入值分配给$ this->会话,以便将其添加到数据库也是。
目前,虽然它是由ajax发送的,但确认和结账控制器并不知道它,因此不会保存在数据库中。
答案 0 :(得分:0)
要做的事情:
<强>第一强>
添加(在执行所有必要的检查后,如果它是空的或具有所需的长度等)
$this->session->data['cheque_number'] = $this->request->post['cheque_number'];
<强>第二强>
在confirm.php
控制器中,在$this->session->data['order_id'] = $this->model_checkout_order->addOrder($data);
$data['cheque_number'] = $this->session->data['cheque_number'];
并在此之前再次执行您可能需要的所有必要验证
<强>第三强>
现在我假设您已经编辑了order
(或任何其他数据库表)以包含新字段cheque_number
如果是,请在addOrder
中修改Model/Checkout/Order
功能,以便它还会将您的cheque_number
与其他字段一起插入