2015-12-28 8 views
-1

Ниже приводится код продукта. Но я не понимаю, где хранятся значения. Просьба помочь найти решение для этого. Я хочу знать логику этого кодаКак добавить товар в корзину в opencart

public function add($product_id, $qty = 1, $option = array(), $recurring_id = 0) { 
    $this->data = array(); 

    $product['product_id'] = (int)$product_id; 

    if ($option) { 
     $product['option'] = $option; 
    } 

    if ($recurring_id) { 
     $product['recurring_id'] = (int)$recurring_id; 
    } 

    $key = base64_encode(serialize($product)); 

    if ((int)$qty && ((int)$qty > 0)) { 
     if (!isset($this->session->data['cart'][$key])) { 
      $this->session->data['cart'][$key] = (int)$qty; 
     } else { 
      $this->session->data['cart'][$key] += (int)$qty; 
     } 
    } 
} 
+0

Значения хранить в сессии корзину ключей, как '$ ключ = base64_encode (сериализации ($ продукт));' Также упомянуть OpenCart версии –

+0

я использую OpenCart 2x – user12342

+0

Если вы хотите получить информацию , вы должны декодировать и unserialize. Напр. 'unserialize (base64_decode ($ key));' –

ответ

2

Подробнее о товаре с опциями хранятся в $key = base64_encode(serialize($product));. Где $this->session->data['cart'][$key] содержит количество, добавленное клиентом.

Для получения дополнительной информации проверьте функцию getProducts() на той же странице. Где можно найти

+0

его отображение только последнего добавленного продукта. как я могу получить все идентификаторы продуктов, которые есть в корзине – user12342

+0

Найти в цикле '$ product_id = $ product ['product_id'];' Он даст вам идентификатор продукта. –

+0

Я хочу знать, как они передают значение. bcz Я хочу передать еще одно введенное значение вместе с идентификатором продукта. input filed - ввод вручную. может объяснить вам, что логика – user12342

Смежные вопросы