[Решено] Добавление опции в кнопку "Добавить в корзину"

Тема в разделе "OpenCart", создана пользователем Low_Weaper, 13 авг 2015.

Статус темы:
Закрыта.
  1. Low_Weaper

    Low_Weaper

    Регистрация:
    13 авг 2015
    Сообщения:
    8
    Симпатии:
    0
    Доброго времени суток программисты! Имеется ряд товаров:
    [​IMG]

    При нажатии на кнопку Корзины они одновременно попадают в корзину, но не опции. Как кнопку "Корзина" пофиксить добавление и опций. Очень надо, в JavaScript не силен, вот функция которую надо доработать:


    Жду ваших предложений по решению данной проблемы
     
  2. Andre231

    Andre231

    Регистрация:
    18 июн 2014
    Сообщения:
    47
    Симпатии:
    16
    Low_Weaper нравится это.
  3. Low_Weaper

    Low_Weaper

    Регистрация:
    13 авг 2015
    Сообщения:
    8
    Симпатии:
    0
    Спасибо за ответ! Но к сожалению модуль не встал на 2.0.2.0. Есть еще предложения?
     
  4. Andre231

    Andre231

    Регистрация:
    18 июн 2014
    Сообщения:
    47
    Симпатии:
    16
    По словам автора
     
  5. Low_Weaper

    Low_Weaper

    Регистрация:
    13 авг 2015
    Сообщения:
    8
    Симпатии:
    0
    Писать то он писал, однако у меня ошибок на пол экрана, может конечно файл ломанный, попробую другой поискать, но факт остается фактом, проблема пока не решена
     
  6. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.042
    Симпатии:
    774
  7. Low_Weaper

    Low_Weaper

    Регистрация:
    13 авг 2015
    Сообщения:
    8
    Симпатии:
    0
  8. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.042
    Симпатии:
    774
    Сейчас по клику на кнопку добавления в корзину просто трижды вызывается функция cart_combo.add с id каждого товара, которое заранее подставлено в вызов при генерации страницы. То есть, сами товары и опции в комбо вообще не обрабатываются.

    Вместо этого по клику на кнопку нужно вызывать скрипт обёртку, который пройдётся по товарам в комбо и для каждого в отдельности вызовет cart_combo.add без заранее подставленного id. И дописать функция cart_combo.add по образцу на странице товара, там есть обработка опций.
     
    Low_Weaper нравится это.
  9. Low_Weaper

    Low_Weaper

    Регистрация:
    13 авг 2015
    Сообщения:
    8
    Симпатии:
    0
    Поможете с этим? Как я написал выше в Javascript не силен(
     
  10. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.042
    Симпатии:
    774
    Там достаточно много работы, так что читайте подпись.
     
  11. Low_Weaper

    Low_Weaper

    Регистрация:
    13 авг 2015
    Сообщения:
    8
    Симпатии:
    0
    А если сделать добавление не на AJAX, а через POST?
    Тогда такой вопрос, что в обработчике добавляется к строке "index.php?route=checkout/cart/add"? Что нужно дописать, чтобы товар добавился в корзину?
     
    Последнее редактирование: 14 авг 2015
  12. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.042
    Симпатии:
    774
    Там и так POST. Это видно и по коду в первом посте. А то, о чём вы говорите - это просто "без AJAX". Но это никаким образом не решит задачу само по себе, а ещё и усложнит её.

    К ссылке ничего добавлять не надо, нужно добавить данные по опциям в POST запрос, сейчас там не отправляется ничего, кроме id товара. Я же говорю, посмотрите, как это происходит на странице товара.
     
  13. Low_Weaper

    Low_Weaper

    Регистрация:
    13 авг 2015
    Сообщения:
    8
    Симпатии:
    0
    Да, мне уже объяснили, спасибо. Усложнит, но я по крайней мере смогу решить задачку на PHP, нежели на Java
     
  14. Dotrox

    Dotrox Команда форума

    Регистрация:
    27 ноя 2012
    Сообщения:
    2.042
    Симпатии:
    774
    Не путайте Java и JavaScript - это два абсолютно разных языка. Пожалуй, у JavaScript с PHP и то больше общего, чем с Java.

    Я сомневаюсь, что настолько хорошо зная PHP, чтоб переписывать контроллер корзины под эту задачу для использования без AJAX, вы можете настолько плохо знать js, чтоб не справиться с ней не трогая контроллер. Да и нужны тут знания не столько js, сколько jQuery, при чём базовые. И сам код вам даже придумывать не надо, просто посмотрите как обрабатывается клик по кнопке покупки на странице товара и посмотрите, как там выводятся опции.
     
  15. Low_Weaper

    Low_Weaper

    Регистрация:
    13 авг 2015
    Сообщения:
    8
    Симпатии:
    0
    Да я знаю что Java не Javascript, печатал на бегу...
    Что там переписывать? Я добавил foreach, который обрабатывал POST из формы и все дела, ушло менее 10 минут
    --- Добавлено, 15 авг 2015 ---
    Проблема решена, всем спасибо за ответы
     
Статус темы:
Закрыта.