- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов

VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
как реализовать корзину, в которой у одного товара могут быть разные параметры с разными ценами, а так же товар без параметров с одной единственной ценой?
Надо смотреть, что за товары в магазине.
--- ПРИМЕР ---
Плоскогубцы : 500 руб.
Шар : красный - 500 руб., синий - 1000 руб.
Джинсы : L - 1500 руб., XL - 2500 руб.
Если товары с артикулами реальные, как в вашем примере, то именно такие товары и надо создавать и класть в корзину. Но при этом надо нормализовать сущности, чтобы избежать избыточности.
Т.е. каждый товар должен описываться двумя сущностями:
1) Реальный товар, с присущими ему уникальными свойствами, включая артикул.
2) Представление товара, аккумулирующее в себя свойства общие для группы рельных товаров, отличающихся например только цветом и размером.
В корзину класть надо реальный товар.
Это наиболее понятная структура, т.к. является отражением реального склада.
Пример:
Есть представление товара: "Шар" с общим описанием.
И есть реальные товары с ним связанные:
Шар : красный - 500 руб
Шар : синий - 1000 руб
и т.д. - именно эти реальные шары кладутся в корзину.
Если атрибутов у товаров немного и типов товаров немного, то их лучше прямов типе (классе) товара прописать - это будет проще и работать будет быстрее.
Однако если типов товаров будет дохрена и атрибутов дохрена и количество атрибутов переменно и нужна будет фасетная фильтрация по параметрам (как в Я.маркете), то реализация такой системы - нетривиальная задача.
Товаров не много, но цены разные:
----
Допустим палка 10 см синяя = 10 руб
Тогда как палка 15 см синяя = 15 руб, но так же есть и красный цвет = 20 руб.
И например палка 20 см синяя 18 руб, красная 25 руб, зеленая 33 руб.
---- ДЛЯ ЧИТАЕМОСТИ ----
(10см) - (синяя) = (10 руб)
(15см) - (синяя) = (15 руб), (красная) = (20 руб)
(20см) - (синяя) = (18 руб), (красная) = (25 руб), (зеленая) = (33 руб)
То есть назначить таблицу с заранее указанными атрибутами (цвет - цена) не получится, так как цена цвета ИНДИВИДУАЛЬНА для каждого товара.
Leonid H,
В чем проблема? Что у вас на складе реально лежит, то и создаете в БД и кладете в корзину, но на сайте на страничке карточки товара показываете не эти реальные товары, а их представление.
То есть:
У вас есть представление товара с названием "Палка". Делаете её общее описание: что у неё целых два конца, она деревянная и пр.
А также на этой странице в том или ином виде выводите реальные товары, которые можно положить в корзину: со своими индивидуальными артикулами, ценой, длиной и цветом. Например, в виде списка в таблице или в виде аджакс-формы.
Итого на странице карточки товара бутуд представлены:
1) Представление обобщенного товара "Палка" (Заголовок, описание и пр.)
2) Реальные товары со своими индивидуальными атрибутами:
Палка (10см) - (синяя) = (10 руб)
Палка (15см) - (синяя) = (15 руб),
Палка (20см) - (синяя) = (18 руб) (старая партия),
Палка (20см) - (синяя) = (17 руб) (новая партия),
и т.д.
Leonid H,
В чем проблема?
То есть получается будут две таблицы, одна из которых дает общее представление, в которой мы указываем артикул..
----------------------------------
| id | title | desc | артикул |
| 1 | Утюг | хороший утюг | ee24 |
---------------------------------- ????
.. а вот второй таблице записи типа: ??
----------------------------------
| id | артикул | цвет | цена |
----------------------------------
| 1 | ee24 | синий | 200 |
----------------------------------
| 2 | ee24 | красный | 400 |
----------------------------------
???
Leonid H, в представлении товара артикул не нужен, артикул должен быть у реальных товаров (во второй таблице) и он должен быть свой у каждого реального товара, в вторую таблицу также нужно добавить поле с id представления товара, чтобы связать вторую таблицу с первой.
----------------------------------
| id | title | desc |
| 1 | Утюг | хороший утюг |
---------------------------------- ????
.. а вот второй таблице записи типа: ??
----------------------------------
| id | display_id | артикул | цвет | цена |
----------------------------------
| 1 | 1 | ee24-1 | синий | 200 |
----------------------------------
| 2 | 1 | ee24-2 | красный | 400 |
----------------------------------
---------- Добавлено 17.09.2016 в 20:22 ----------
Такой подход также позволяет решить проблему, когда у вас имеется один и тот же товар, но из разных поставок с разными артикулами, количеством и ценами.
Но этот подход не годится для товаров, которые реально не лежат на складе, а подготавливаются по заказу клиента, например, если палка нарезается по желанию клиента по любым размерам - число вариантов длин которых или очень большое, или вообще бесконечно.
Спасибо! Более менее понятно.