Как работать с данными в моем случае (нужен совет от профи)?

Статус
В этой теме нельзя размещать новые ответы.

danneo

Честный
Регистрация
13 Ноя 2007
Сообщения
1.527
Реакции
121
Нужен дельный совет от тех, кто хорошо разбирается в базах и коде (вопрос касается и того и другого). Совет, практически - консультация, нужно хорошо подумать. Но для тех, кто профи, я думаю, труда не составит :)
Буду очень благодарен за помощь.

Есть категории, есть фирмы (пользователи), есть товары, которые добавляют эти фирмы.
Вся задача в том, что товары должны быть только те, что создал админ, а фирмы только ставили галочки (выбирали), есть у них такой товар или нет, и указывают цену и комментарий, если товар есть.

В каталоге выводится список фирм, у кого есть определенный товар.
Вопросы:
1. в том, как хранить данные (в каком виде) , т.е. список товаров у каждой фирмы.
2. как работать с данными, в зависимости от типов данных в базе (некий алгоритм)
3. Что нужно предусмотреть? Например, что если товар изменит название, категорию, будет удален, появится новый товар - что будет с данными у фирмы? От этого и будет зависеть хранение данных, как понимаю.
4. Нужен ли кэш в такой задумке? Кол-во фирм 2000 примерно, товаров около 100.

Функции админа:
удалять товар, добавлять, редактировать название, описание, перемещать в категорию, скрывать.

Функции пользователя:
выбирать товар, удалять (т.е. фирма больше не имеет товара), редактировать цену и комментарий.

Функции посетителя сайта:
поиск фирм, у которой есть конкретный товар, просмотреть цену и комментарий у фирмы
вывод всех товаров в каждой категории на анкете фирмы.



Идеи (мои, но сырые, т.к. в php не профи:(
1. сделать админом в каждой категории товары, по типу, как и сами категории. Когда фирма заполняет товары, выводить список всех товаров у каждой категории с чекбоксами. Пользователь отмечает и сохраняет. И данные сохраняются, как массив из id товаров в поле таблицы у фирмы. При вызове карточки фирмы, брать данный массив и делать запрос на вывод списка товаров по заданному id (where id =12,13,15,16). Все товары должны разделятся на категории. Т.е. выводится категория, делается запрос на все id данной категории (у админа которые), далее, делается запрос на все id у фирмы. Если id у фирмы и которые добавил админ, совпадают, то выводится. Это чтобы разбить на категории.

При редактировании фирмы делать такой же запрос. При совпадении id делать чекбоксами отмеченными. И пересохранять новый список.

Вопрос в поиске... можно в php сделать вывод фирм, где в многомерном массиве найден id товара? Что с нагрузкой будет?

2. Добавлять каждый товар, как обычный товар, один товар - одна запись в таблице. Пользователю открывается уже готовая карточка с товарами (как шаблон). Он отмечает и отправляет. В таблицу сохраняется сразу много товаров (например, 10 отмеченных из 15 и так несколько категорий сразу) + комментарий и цена. Так в таблицу летят, примерно, 75 товаров от одной фирмы.
При редактировании, выводить список товаров от фирмы. На карточке фирмы выводить список всех товаров по категориям. Это все просто.
А если админ удаляет товар, меняет его категорию, название, он должен быть удален у всех фирм (все товары с id этого товара). При перемещении сменить id категории.
При переназывании запускать скрипт на изменение названий всех товаров.

Что лучше, как правильно, мои ошибки? :)
 
у меня один принципиальный вопрос, вы собираетесь это всё с нуля реализовать? или не будете изобретать велосипед и используете один из известных скриптов магазинов, коих несколько, часть из них имеють открытый сорс код. или это курсовая работа?
 
у меня один принципиальный вопрос, вы собираетесь это всё с нуля реализовать? или не будете изобретать велосипед и используете один из известных скриптов магазинов, коих несколько, часть из них имеють открытый сорс код. или это курсовая работа?
с нуля не хочу. А магазин разве подойдет? Там нельзя добавлять товары пользователям.
 
вроде ничего сложного
Таблица товаров - id, Name, Artikul, Vendor, Description,Category..
Таблица категорий - id,.CatNum, CatName, Comment
Таблица фирм - id, Name, Description,Address, Email ....
Таблица привязки фирм на товары Id_in_tabl, Id_firm, Id_tov,Price, Comment

Дальше пишете ТЗ и примерно раскидываете дизайн админки на листы. Дальше запрашиваете ценник по веб-студиям. Ваше ТЗ они вам сделают на своем движке и сайт до кучи
 
с нуля не хочу. А магазин разве подойдет? Там нельзя добавлять товары пользователям.
Поставьте себе скрипт какого-нибудь е-молла. Там пользователям можно и товары добавлять и много чего еще. Самодельный велосипед далеко не уедет
 
с нуля не хочу. А магазин разве подойдет? Там нельзя добавлять товары пользователям.
тоесть, у вас получается некое подобие Амазона, где пользователи также могут добавить товар и продавать его, список товаров, а именно уникальных идентификаторов продуктов вносит только админ?

в принципе, чтоб приблизительно понять, что есть уже в доступности поищите "Магазины с возможностью добавления товаров пользователями"
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся

ну и :crazy:
Для просмотра ссылки Войди или Зарегистрируйся
 
Последнее редактирование:
тоесть, у вас получается некое подоби Амазона, где пользователи также могут добавить товар и продавать его, список товаров, а именно уникальных идентификаторов продуктов вносит только админ?

в принципе, чтоб приблизтельно понять, что есть уже в доступности поищите "Магазины с возможностью добавления товаров пользователями"
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся

ну и :crazy:
Для просмотра ссылки Войди или Зарегистрируйся
за это спасибо. Но...
если даже и найду магазин подобный, как устроить функцию, чтобы виды товаров добавлял только админ... чтобы пользователи не могли ничего от себя выдумать (как она может быть реализована из магазина)?
 
вполне возможно такое уже есть в ссылках (магазинах), почитайте детальнее, особенно и-молы, думаю так такое предусмотрено
 
По моему опыту скажу, разработка интернет-магазин с нуля, ничего хорошего из этого не выйдет и под силу в разумные сроки только компании.
1. С вашими вопросами, могу сделать вывод, что вам рано заниматься этим, у вас не хватает опыта, как в программировании на уровне приложения так и БД.
2. Написание своего решения, чревато многими багами, которые будут выявляться и исправляться в течении длительного периода времени, на тот момент Ваш интернет-магазин будет простаивать, а пользователи разбегутся, никто не хочет рисковать своими деньгами
3. Длительный процесс, помимо клиентской части, необходима админская, система мониторинга и контроля.
4. Авторизация, аутентификация, функциоанл "Запомни меня" и т.п. Все это должно быть написано грамотно, взаимодействие на уровне токенов, никаких логинов, паролей, больше одного раза по незащищенному каналу.
5. Архитектура должна быть расширяема.
6. Управление транзакциями, не только на уровне БД.
7. Кэширование
и много другое.

Ведь простой интернет-магазин никому не нужен, самый оптимальный вариант, взять готовое решение, например PrestaShop, заказать или разработать модуль с необходимым функционалом. Это намного проще.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху