获取产品名称和代码到联系表单

时间:2013-09-12 04:54:43

标签: php opencart

我在联系表格中添加了两个字段。

Product Name:
Product Code:

我在产品页面上有一个预购按钮,因此所有0数量的产品都会启用此按钮。当用户单击此按钮时,他们将被重定向到联系表单。

<a href="http://localhost/store/index.php?route=information/contact"><button>Pre-Order</button></a>

现在,当用户点击产品页面上的预购按钮时,如何在联系表单中自动填写产品名称和产品代码输入?

示例场景:

客户正在使用产品代码:LV032浏览产品Lenovo主板,但他发现此产品缺货且预购仅是可用选项。因此,他点击预订按钮,然后客户被重定向到联系表格,产品名称和产品代码字段已经填写了客户想要预订的产品名称和代码。

修改

我在产品页面上使用会话然后使用联系表单上的会话获得了一个有效的解决方案。请告知我是否做得对。

2 个答案:

答案 0 :(得分:3)

我并不完全买你想做的事情,这就是我想你想做的事情

<a href="localhost/application/perorder.php?id=123&name=thinkpad">Pre Order</a>

现在perorder.php看起来应该是这样的

$id = $_GET['id']; $name = $_GET['name'];
<input type="text" value="<?php echo $name;?>" />

答案 1 :(得分:0)

我这样做了。

我在位于controller/product/product.php

的product.php中添加了这两行
$_SESSION['prodname'] = $product_info['name'];
$_SESSION['prodcode'] = $product_info['model'];

现在位于controller/information/contact.php的联系表单控制器contact.php中 我添加了这段代码。

if (isset($this->request->post['prodname'])) {
            $this->data['prodname'] = $this->request->post['prodname'];
        } else {
            if(isset($_SESSION['prodname'])) {
            $this->data['prodname'] = $_SESSION['prodname'];
            } else {
            $this->data['prodname'] = '';
            }
        }

        if (isset($this->request->post['prodcode'])) {
            $this->data['prodcode'] = $this->request->post['prodcode'];
        } else {
            if(isset($_SESSION['prodcode'])){
            $this->data['prodcode'] = $_SESSION['prodcode'];
            } else {
            $this->data['prodcode'] = '';
            }
        }

然后在控制器contact.php内的成功函数中,我在$this->response->setOutput($this->render());

之前添加了这一行
unset($_SESSION['prodname']);
unset($_SESSION['prodcode']);       
$this->response->setOutput($this->render()); 

现在它正在运作。我不知道这是否是正确的方法。如果有人有更好的答案,请给我一些启示。感谢。