On March 26, 2019 we launched new MODX Forums. Please join us at the new MODX Community Forums.
Subscribe: RSS
  • Версия v4.1 beta, браузер Мозилла 4.0.1 и пробовала на IE8
    • Не дождалась ответа. Поставила версию 3.2.2
      Все работает, но есть одно НО:
      при заказе более 5 позиций база данных ругается:

      « MODx Parse Error »
      MODx encountered the following error while attempting to parse the requested resource:
      « Execution of a query to the database failed - Column count doesn’t match value count at row 1 »
      SQL: INSERT INTO `shop_order_detail` ( `numorder` , `quantity` , `price` , `id` , `name` ) VALUES ( ’69’, ’1’, ’14500’, ’255’, ’Товарчики’,NOW());
      [Copy SQL to ClipBoard]

      Очевидно, что параметров в Values больше чем полей в таблице shop_order_detail
      Смотрим в файл с запросами (saveorder_db.inc.php):

      --кусок кода--

      if($NAME_4) {
      $modx->db->query( "
      INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name` )
      VALUES ( ’".$numorder."’, ’".$QUANTITY_4."’, ’".$PRICE_4."’, ’".$ID_4."’, ’".$NAME_4."’);
      ");
      }

      if($NAME_5) {
      $modx->db->query( "
      INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name` )
      VALUES ( ’".$numorder."’, ’".$QUANTITY_5."’, ’".$PRICE_5."’, ’".$ID_5."’, ’".$NAME_5."’);
      ");
      }

      if($NAME_6) {
      $modx->db->query( "
      INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name` )
      VALUES ( ’".$numorder."’, ’".$QUANTITY_6."’, ’".$PRICE_6."’, ’".$ID_6."’, ’".$NAME_6."’,NOW());
      ");
      }


      if($NAME_7) {
      $modx->db->query( "
      INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name` )
      VALUES ( ’".$numorder."’, ’".$QUANTITY_7."’, ’".$PRICE_7."’, ’".$ID_7."’, ’".$NAME_7."’,NOW());
      ");
      }
      --итд--

      Объясните, что за параметр NOW() и зачем он здесь?
      • Сталкнулся с такой проблеммой, в админке когда присваиваешь статус заказа и примечание идёт запись данных в кодировке UTF (у меня всё в cp1251 всё остальное работает нормально) Версия shop 4.1 beta Приложил скриншот, может кто подскажет как поправить.

        • Quote from: webzic at May 17, 2011, 08:11 AM

          Сталкнулся с такой проблеммой, в админке когда присваиваешь статус заказа и примечание идёт запись данных в кодировке UTF (у меня всё в cp1251 всё остальное работает нормально) Версия shop 4.1 beta Приложил скриншот, может кто подскажет как поправить.



          Можете сюда скопировать строки с 59 по 71 в файле assets/snippets/shop/include/delete_clear.inc.php ? Я хочу посмотреть, в какой кодировке у вас идет запись в БД.

          • Quote from: kwilks at May 12, 2011, 10:44 AM

            Не дождалась ответа. Поставила версию 3.2.2
            Все работает, но есть одно НО:
            при заказе более 5 позиций база данных ругается:

            « MODx Parse Error »
            MODx encountered the following error while attempting to parse the requested resource:
            « Execution of a query to the database failed - Column count doesn’t match value count at row 1 »
            SQL: INSERT INTO `shop_order_detail` ( `numorder` , `quantity` , `price` , `id` , `name` ) VALUES ( ’69’, ’1’, ’14500’, ’255’, ’Товарчики’,NOW());
            [Copy SQL to ClipBoard]

            Очевидно, что параметров в Values больше чем полей в таблице shop_order_detail
            Смотрим в файл с запросами (saveorder_db.inc.php):

            --кусок кода--

            if($NAME_4) {
            $modx->db->query( "
            INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name` )
            VALUES ( ’".$numorder."’, ’".$QUANTITY_4."’, ’".$PRICE_4."’, ’".$ID_4."’, ’".$NAME_4."’);
            ");
            }

            if($NAME_5) {
            $modx->db->query( "
            INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name` )
            VALUES ( ’".$numorder."’, ’".$QUANTITY_5."’, ’".$PRICE_5."’, ’".$ID_5."’, ’".$NAME_5."’);
            ");
            }

            if($NAME_6) {
            $modx->db->query( "
            INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name` )
            VALUES ( ’".$numorder."’, ’".$QUANTITY_6."’, ’".$PRICE_6."’, ’".$ID_6."’, ’".$NAME_6."’,NOW());
            ");
            }


            if($NAME_7) {
            $modx->db->query( "
            INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name` )
            VALUES ( ’".$numorder."’, ’".$QUANTITY_7."’, ’".$PRICE_7."’, ’".$ID_7."’, ’".$NAME_7."’,NOW());
            ");
            }
            --итд--

            Объясните, что за параметр NOW() и зачем он здесь?



            Этот параметр NOW() записывает в Бд текущую дату. Но он как раз тут не нужен. Эта ошибка была в 3.2.2. Но поскольку эта версия устарела, поэтому эту ошибку не исправили. Вы просто уберите в вышеприведенных строках этот параметр.
            • Quote from: Serg24 at Jun 01, 2011, 07:10 AM

              Quote from: webzic at May 17, 2011, 08:11 AM

              Сталкнулся с такой проблеммой, в админке когда присваиваешь статус заказа и примечание идёт запись данных в кодировке UTF (у меня всё в cp1251 всё остальное работает нормально) Версия shop 4.1 beta Приложил скриншот, может кто подскажет как поправить.



              Можете сюда скопировать строки с 59 по 71 в файле assets/snippets/shop/include/delete_clear.inc.php ? Я хочу посмотреть, в какой кодировке у вас идет запись в БД.




              вот в стандартном файле:
              $act=$_POST['act'];
              //iconv("windows-1251", "UTF-8",$_POST['status']);
              $idorder=$_POST['idorder'];
              	if  (isset($act) && $act=="update" && isset($idorder) && $idorder !="" && $idorder !="0") {
              		$modx->db->query( "
              			UPDATE `".$shop_order."` SET `status` = '".$_POST['status']."' WHERE `numorder` =".$idorder." ;
              		");
              		$modx->db->query( "
              			UPDATE `".$shop_order."` SET `commentadmin` = '".$_POST['commentadmin']."' WHERE `numorder` =".$idorder." ;
              		");
              		echo "<span class='ok'>".$shop_lang['saveok']."</span>";
              	exit;
              	}
              
              


              я немного поправил может криво я не программист но работает
              
              $act=$_POST['act'];
              //iconv("windows-1251", "UTF-8",$_POST['status']);
              $idorder=$_POST['idorder'];
              	if  (isset($act) && $act=="update" && isset($idorder) && $idorder !="" && $idorder !="0") {
              		$modx->db->query( "
              			UPDATE `".$shop_order."` SET `status` = '".iconv("utf-8", "cp1251",$_POST['status'])."' WHERE `numorder` =".$idorder." ;
              		");
              		$modx->db->query( "
              			UPDATE `".$shop_order."` SET `commentadmin` = '".iconv("utf-8", "cp1251",$_POST['commentadmin'])."' WHERE `numorder` =".$idorder." ;
              		");
              		echo "<span class='ok'>".$shop_lang['saveok']."</span>";
              	exit;
              	}
              
              • Хотела попробовать обновиться до 4.0, а ссылка не работает. Перезалейте пожалуйста.
                • В связи с большой загруженностью проект был на некоторое время приостановлен. Но теперь рад сообщить, что наконец доступна демо-версия сайта, работающая на новой версии модуля.

                  Приглашаю Вас попробовать его в работе и потестировать

                  Сайт проекта: http://tsvshop.xyz
                  Демо-сайт: http://demo.tsvshop.xyz
                  Логин: demo
                  Пароль: 123456

                  Пока модуль на стадии доработки и тестирования, но основной функционал уже работает.

                  Сразу хочу предупредить, что демо-сайт сейчас с минимальным функционалом - только самое основное. На самом же деле модуль имеет довольно большое количество "полезностей", о которых я напишу немного позднее. Пока же доступно для демонстрации следующее:

                  2 тестовых товара
                  Корзина
                  Оформление заказа
                  Инфоблок

                  Товары можно добавить в корзину, просмотреть корзину и сделать заказ.

                  Обратите внимание!

                  У каждого товара есть несколько дополнительных опций: у телевизора - диагональ, а у микроволновки - цвет. Выбор любой из опций влияет на стоимость товара. Самих опций может быть неограниченно много. (При редактировании товара вы увидите, где они добавляются)
                  Кроме того, цена товара меняется в зависимости от того, сколько штук этого товара вы положили в корзину. Это очень удобно для предоставления скидки на товар. Эта скидка добавляется таким образом: если в поле ЦЕНА вписать просто цену, напр., 1200, то цена будет фиксированной. А если вписать 1-2==1200||3-4==1100||1000, то при заказе от 1 до 2 шт. цена будет 1200, от 3 до 4 - 1100, а более 4 - 1000

                  Кроме того, в админке в модуле TSVshop (теперь это новое название модуля) во вкладке Аддоны доступны аддоны, которые добавляют функционал в модуль. Их можно добавлять, удалять, включать и выключать. Планируется большое количество таких аддонов, а некоторые из них уже готовы. Те, что в демо-магазине - пока в процесее разработки.

                  Еще раз хочу напомнить, что функционал намного больший, чем доступно в демо-сайте. Чуть позже я напишу о всех функциях модуля, а также выложу их в демо-сайте.

                  Жду ваши замечания и пожелания:

                  Почта: privat_tel@mail.ru
                  Аська: 207598689
                  Багтрекер (нужна регистрация): http://tsv.org.ua/bugs
                  [ed. note: Serg24 last edited this post 5 years, 3 months ago.]
                  • Страница гуглокода, где можно скачать модуль: http://code.google.com/p/tsv-shop/