Пишу простой аналог Яндекс Маркета. Опишу то, как сделано сейчас:
1. Все товары хранятся в одной таблице Товары.
2. Все компании хранятся в одной таблице Компании.
3. Через отдельную таблицу ТоварыКомпаний связываю общие данные о товаре (Пункт 1), данные о конкретной компании (Пункт 2) и дополнительные данные о товаре (цена, артикул, кол-во на складе) для конкретной компании:
Вроде данный способ не плохой. Но может быть лучше для каждой компании создавать таблицу? Компаний может быть много. Например так:
ТоварыКомпаний_1 (1 - id Компании)
product_id, price, article, stock
Будут еще характеристики для товаров, для каждой компании они свои, тогда нужно будет создавать еще одну таблицу: ТоварыКомпанийХарактеристики_1 (1 - id Компании)
Как лучше хранить данные? Пожалуйста, аргументируйте почему именно ваш вариант лучше.
Если задача - углубить знания в ООП и в PHP вообще, лучше писать свой велосипед. Который скорей всего, если сайт станет популярным, придется переписывать.
Если задача - написать что-то более менее работающее и перспективное в плане развития - Laravel.
ON i.`id_product`= p.`id_product`AND i.`cover`='1'
LEFTJOIN`ps_specific_price` sp
ON sp.`id_product`= p.`id_product`
LEFTJOIN`ps_feature_product` fp
ON fp.`id_product`= p.`id_product`AND fp.`id_feature`='13'
LEFTJOIN`ps_feature_value_lang` f
ON f.`id_feature_value`= fp.`id_feature_value`
WHERE p.`id_product`IN($product_ids_str)
Цифры - константы.(не суть)
$product_ids_str - это те самые id которые были вытащены ранее, просто я подготовил их для запроса. На выходе получим данные. Но не учитывается кол-во товаров. То есть я получу 2 строки, по одной для каждого id товара. Но нужно получить исходя из этой задачи 3 строки, так как всего 3 товара. Что нужно дописать чтобы получилось то что мне нужно?
Рассматривал вариант перебора в цикле и дублирования инфы, в зависимости от кол-ва товара.. но как-то некрасиво чтоли.
Как можно заметить сразу после категории идут 2 знака - //. Как можно прописать регулярное выражение в htaccess чтобы был только 1 знак /? Простые редиректы я делал, но с таким не приходилось сталкиваться.