alex-1917
@alex-1917
Если ответ помог, отметь решением

Как организовать сохранение опции товара при его редактировании?

Встал вопрос - потекла идея)))
Ковыряю тут одну самописку, там были товары без опции, а опции вдруг внезапно стали нужны.
Опция - это сочетание размера и цвета, аналогично торговым предложениям в битриксе. Или аналогично модификациям товара в опенкарт...

Ок, опции дописал. А как теперь их сохранять, если надо добавить еще пару опции? Или если какую-то опцию удаляем за ненадобностью?

Вот подробнее:
Товар- рубашка гавайская.
Опции:
50 размер, цвет синий по 230руб в кол-ве 200шт
52 размер, цвет синий по 240 руб в кол-ве 240 шт
50 размер, цвет желтый по 250 руб в кол-ве 320 шт
52 размер, цвет голубой по 180 руб в кол-ве 120 шт

Например, открыл я такой товар и удаляю одну строчку.
А затем добавляю новую строчку или две.
Как эти движения фиксировать и при сохранении товара передавать в БД?
1 вариант - при редактировании товара удалять в БД все его опции и записывать новые опции. Но так распухнет индекс в таблице опции.
2вариант - держать массив опции текущего товара в сессии.

Что подскажете, господа эксперты?

Вот схема БД:
5ba2ae183be8c958072948.png
  • Вопрос задан
  • 59 просмотров
Пригласить эксперта
Ответы на вопрос 1
@vyrkmod
Пишу на php. И не стыдно.
Удалять всё разом не надо, пользователь от интерфейса же не этого просит. Соответственно, держим кнопки "удалить" для каждой опции и форму для новой. Умеем - пришем ajax-ы и редактируем html когда на них ответят. Не умеем - заворачиваем каждую кнопку в свою форму, клацая на них пользователь будет "уходить" со страницы. Ну а приняв и удалив нужную опцию, снова отправляем юзера на страницу продукта.
З.Ы. удалять price из product не стоит, иначе товары без этих опций "оценить" будет нереально, лучше просто писать туда null и соответственно обрабатывать.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы