Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Произвольные данные в корзину


7up

Recommended Posts

Подскажите пожалуйста, как правильно можно передать в корзину произвольные данные, при покупке товара?

Суть в чем: добавил произвольную форму в product.tlp, которая специальным образом формирует вид выбора вариантов опций товара, а после добавления в корзину эти данные не попадают.

При добавлении например textarea и ввода в него произвольного текста, он то опадает в заказ, но так и не смог понять как так же запихнуть свои данные :(

Заранее спасибо.

Надіслати
Поділитися на інших сайтах


  • 3 weeks later...

Проблему решил добавлением скрытого поля формы, которое добавляется в корзину, в которое уже в свою очередь с помощью jquery добавляются данные. Кому интересно, могу выложить подробное описание реализации связных опций.

Надіслати
Поділитися на інших сайтах


  • 3 months later...
  • 1 year later...

Пардон, давно не заглядывал в тему. Решил следующим способом (версия OpenCart 1.5.6):

 

Добавляю произвольное поле в product.tpl, например с названием result.

В функции отслеживающей клик по "купить" $('#button-cart').bind('click', function() в поле data добавляю свое поле вот так "data: $('.product-info input[name=\'result\'],....." что бы оно передавалось контроллеру.

 

Далее в catalog\controller\checkout\cart.php:

перед строкой:

if (!$json) {
$this->cart->add($this->request->post['product_id'], $quantity, $option, $profile_id);

 

 

вставляю строку:

$option['result'] = $this->request->post['result'];

 

 

ниже ищем строку формирования массива:

 $this->data['products'][] = array(

 

и добавляем в него наше значение:

'result'   => $product['result'],

 

 

В system\library\cart.php:

находим строку формирующую массив:

$this->data[$key] = array(

 

и добавляем:

'result'        => $options['result'],

 

 

Ну и соответственно для отображение в корзине в view\theme\template-name\template\checkout\cart.tpl имеем $product['result'] с нашим значением, отображаем его в удобном месте. 

 

Это все лишь для отображения, что делать дальше с этим произвольным значением каждому свое, я например записываю его в базу при оформлении в модели, добавив доп. колонку в таблице order_product

 

Думаю можно теме поставить статус "Решено".

Надіслати
Поділитися на інших сайтах


  • 8 months later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.