еще один интернет-магазин

Собираем здесь завершённые проекты, использующие Yii. Один проект — одна тема.
Ответить
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

еще один интернет-магазин

Сообщение kosenka »

Наконец-то закончил проект: _http://euro-lift.ru

Что использовалось:
- yii 1.1.1-dev
- расширения: EasyPhpThumb, CShoppingCart
- кешируется все, что можно

Если есть вопросы - с удовольствием отвечу.

p.s. дизайн и верстка не мои
Последний раз редактировалось kosenka 2010.03.03, 17:59, всего редактировалось 1 раз.
Bupyc
Сообщения: 13
Зарегистрирован: 2009.11.25, 14:24
Контактная информация:

Re: еще один интернет-магазин

Сообщение Bupyc »

покажите скрины админки.
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: еще один интернет-магазин

Сообщение kosenka »

Bupyc писал(а):покажите скрины админки.
а что конкретно интересует? скринов будет очень много.
Bupyc
Сообщения: 13
Зарегистрирован: 2009.11.25, 14:24
Контактная информация:

Re: еще один интернет-магазин

Сообщение Bupyc »

Вообще интересует как вы ее делали - отдельное приложение, yiic и т.д. Чем больше скринов, тем лучше :)
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: еще один интернет-магазин

Сообщение samdark »

С CShoppingCart не было проблем?
evgen
Сообщения: 14
Зарегистрирован: 2009.11.13, 14:33
Откуда: Красноярск
Контактная информация:

Re: еще один интернет-магазин

Сообщение evgen »

Отличный сайт получился как в плане оформления, так в плане и реализации на уровне кода и имплементации.

Поддержу спрос на скрины админки.

Еще хотел вопрос задать какой был таймлайн по проекту?
За какой срок уложились?
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: еще один интернет-магазин

Сообщение kosenka »

Sam Dark писал(а):С CShoppingCart не было проблем?
Там была маленькая проблема с добавлением товара в "корзину", но pirrat помог ее решить.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: еще один интернет-магазин

Сообщение samdark »

Что используется для категорий каталога?
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: еще один интернет-магазин

Сообщение kosenka »

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

Вообще-то все началось с функционала для "доски объявлений". Первая версия была написана на CodeIgniter'e, но потом я узнал про Yii и решился изучить его.
Переписывая и попутно изучая Yii я стал потихоньку расширять функционал.
Потом начальник захотел инет-магазин и я дописав необходимый функционал расширил изначальный скрипт до магазина, благо "доски объявления" и "магазины" очень похожи.
Вообщем, создание магазина как такового, заняло неделю, а все остальное сильно "размазано" по времени.
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: еще один интернет-магазин

Сообщение kosenka »

Bupyc писал(а):Вообще интересует как вы ее делали - отдельное приложение, yiic и т.д. Чем больше скринов, тем лучше :)
Я не стал сильно заморачиваться и "админка" у меня идет простым контроллером.
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: еще один интернет-магазин

Сообщение kosenka »

Sam Dark писал(а):Что используется для категорий каталога?
Не очень понял вопроса, но постараюсь ответить: используется простая таблица

Код: Выделить всё

CREATE TABLE `Catalog` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `pid` int(10) unsigned NOT NULL default '0',
  `txt_title` varchar(100) collate utf8_unicode_ci NOT NULL,
  `txt_visible` tinyint(3) unsigned NOT NULL default '1',
  PRIMARY KEY  (`id`),
  KEY `pid` (`pid`),
);
 
Выборку из таблицы делаю одним запросом: select * from Catalog и потом уже при помощи след. функции строю дерево

Код: Выделить всё

        // dbSimple Library (http://en.dklab.ru/lib/DbSimple/)
        protected function dbResultToForest($rows, $idName, $pidName)
        {
                $children = array(); // children of each ID
                $ids = array();
                // Collect who are children of whom.
                foreach ($rows as $i=>$r)
                {
                        $row =& $rows[$i];
                        $id = $row[$idName];
                        if ($id === null)
                        {
                                // Rows without an ID are totally invalid and makes the result tree to
                                // be empty (because PARENT_ID = null means "a root of the tree"). So
                                // skip them totally.
                                continue;
                        }
                        $pid = $row[$pidName];
                        if ($id == $pid)
                        {
                                $pid = null;
                        }
                        $children[$pid][$id] =& $row;
                        if (!isset($children[$id]))
                        {
                                $children[$id] = array();
                        }
                        $row['childNodes'] =& $children[$id];
                        $ids[$id] = true;
                }
                // Root elements are elements with non-found PIDs.
                $forest = array();
                foreach ($rows as $i=>$r)
                {
                        $row =& $rows[$i];
                        $id = $row[$idName];
                        $pid = $row[$pidName];
                        if ($pid == $id) $pid = null;
                        if (!isset($ids[$pid]))
                        {
                                $forest[$row[$idName]] =& $row;
                        }
                        //unset($row[$idName]);
                        //unset($row[$pidName]);
                }
                return $forest;
        }
 
Дерево получается очень "витвистое" )
И что бы каждый раз не дергать БД для построение дерева, храню уже готовое дерево в кеше.
Аватара пользователя
Tokolist
Сообщения: 113
Зарегистрирован: 2010.03.01, 22:03

Re: еще один интернет-магазин

Сообщение Tokolist »

А почему CodeIgniter поменяли на Yii, если не секрет?
При регистрации выдало ошибку (точно не запомнил, к сожалению), что-то с синтаксисом связанное...
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: еще один интернет-магазин

Сообщение kosenka »

Tokolist писал(а):А почему CodeIgniter поменяли на Yii, если не секрет?
Просто хотелось что-то новенькое изучить.
Tokolist писал(а):При регистрации выдало ошибку (точно не запомнил, к сожалению), что-то с синтаксисом связанное...
Спасибо, поправил.
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: еще один интернет-магазин

Сообщение Ozzy »

А почему бы не открыть исходники? :)
Мой маленький блог - http://dbhelp.ru
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: еще один интернет-магазин

Сообщение slavcodev »

Ozzy писал(а):А почему бы не открыть исходники? :)
Думаю очень плохая идея.
Одно дело компонент выставить в паблик, а коммерческий проект - это коммерческий проект.
Публиковать его как минимум нарушает конфиденциальность клиента.
Жду Yii 3!
Ekstazi
Сообщения: 1428
Зарегистрирован: 2009.08.20, 22:54
Откуда: Молдова, Бельцы
Контактная информация:

Re: еще один интернет-магазин

Сообщение Ekstazi »

Не могу понять, почему http://euro-lift.ru/catalog/shop/Blok_m ... j_marki_RV
и http://euro-lift.ru/catalog/shop/Avtomo ... _marki_KDJ отображаются по-разному. Это через админку настраивается или как ?

Сайт хорошо вышел, понравился.
pirrat
Сообщения: 193
Зарегистрирован: 2009.04.03, 09:41

Re: еще один интернет-магазин

Сообщение pirrat »

kosenka писал(а):
Sam Dark писал(а):С CShoppingCart не было проблем?
Там была маленькая проблема с добавлением товара в "корзину", но pirrat помог ее решить.
На самом деле там была серьезная ошибка, но после того как, благодаря kosenka, она найдена, исправил её и код был давно залит в репозитарий!
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

Re: еще один интернет-магазин

Сообщение kosenka »

Ekstazi писал(а):Не могу понять, почему http://euro-lift.ru/catalog/shop/Blok_m ... j_marki_RV
и http://euro-lift.ru/catalog/shop/Avtomo ... _marki_KDJ отображаются по-разному. Это через админку настраивается или как ?
Да, через админку.
Если у категории есть картинка(картинки), то товары из этой категории показываются без картинок: http://euro-lift.ru/catalog/shop/Blok_m ... j_marki_RV
Это было сделано специально, потому как товары из этой категории абсолютно идентичны и различаются только "грузоподъемностью".

Если же у категории нет картинки(картинок), то товары из этой категории показываются с картинками: http://euro-lift.ru/catalog/shop/Avtomo ... _marki_KDJ
А тут товары отличаются не только "грузоподъмностью", но и внешним видом.
Ekstazi писал(а):Сайт хорошо вышел, понравился.
Спасибо.
andry
Сообщения: 224
Зарегистрирован: 2009.11.08, 16:52

Re: еще один интернет-магазин

Сообщение andry »

kosenka, можно вас попросить пример кода как реализовано меню категорий?

попытался применить функцию dbResultToForest, но она выводит массив всех веток, а как у вас сделано, что раскрыта только та ветка, в разделе которой находится пользователь?
уже мозг кипит, не могу сообразить, как реализовать такое :?

буду очень благодарен за любую помощь
Denis
Сообщения: 1
Зарегистрирован: 2010.11.18, 22:14

Re: еще один интернет-магазин

Сообщение Denis »

+ к дереву. Можно кусок реализации :roll:
(туплю. на форуме куча постов на эту тему)
Ответить