微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如何在结帐页面上显示当前购物车产品的详细信息

大家好,

提前致谢.
我是opencart的新手,我正在开发opencart的购物车,一切都很顺利,但我遇到了困难,请帮忙

我想访问checkout.tpl中当前添加的购物车项目以生成查询表单,因此我正在编辑controller / checkout.PHP添加这些代码行以访问当前购物车中的产品详细信息:

//Product detail for Enquiry    
    $product_data = array();

    foreach ($this->cart->getProducts() as $product) {
        $option_data = array();

        foreach ($product['option'] as $option) {
            if ($option['type'] != 'file') {
                $value = $option['option_value'];   
            } else {
                $value = $this->encryption->decrypt($option['option_value']);
            }   

            $option_data[] = array(
                'product_option_id'       => $option['product_option_id'],'product_option_value_id' => $option['product_option_value_id'],'option_id'               => $option['option_id'],'option_value_id'         => $option['option_value_id'],'name'                    => $option['name'],'value'                   => $value,'type'                    => $option['type']
            );                  
        }

        $product_data[] = array(
            'product_id' => $product['product_id'],'name'       => $product['name'],'model'      => $product['model'],'option'     => $option_data,'download'   => $product['download'],'quantity'   => $product['quantity'],'subtract'   => $product['subtract'],'price'      => $product['price'],'total'      => $product['total'],'tax'        => $this->tax->getTax($product['price'],$product['tax_class_id']),'reward'     => $product['reward']
        ); 
    }

    $data['products'] = $product_data;

然后在checout / checkout.tpl中添加一行:

foreach ($products as $product)
    {
        echo 'yes am getting products details';
    }

但仍然得到错误:未定义的变量:产品?

我做得对吗?请纠正我.

解决方法

你所做的几乎是正确的,不过你已经习惯了

$data['products'] = $product_data;

你应该放在哪里

$this->data['products'] = $product_data;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐