We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 26791
    • 21 Posts
    Да я в общем то сам всё понял...
    Я про то, что при такой записи TV, он фактически зависит только от номера документа к которому относится. Следовательно он больше не от чего не зависит и заказчик не как на него не влияет.
      • 12992
      • 21 Posts
      Serg24, спасибо огромное за инструкцию. Буду сегодня пробовать делать.
        • 12992
        • 21 Posts
        Не понял я там немного:
        сама корзина формируется параметрами: + fields[0] +
        fields[0] = database.substring(0, Token0);

        и какой параметр нужно вставлять в саму таблицу тогда?
          • 26709
          • 4 Posts
          Quote from: Int at Feb 17, 2010, 01:37 AM

          Не понял я там немного:
          сама корзина формируется параметрами: + fields[0] +
          fields[0] = database.substring(0, Token0);

          и какой параметр нужно вставлять в саму таблицу тогда?

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

          В новой версии мы сделаем весь процесс добавления дополнительных параметров максимально простым. А пока то так.
            • 12992
            • 21 Posts
            т.е. просто +color+ ?
            что-то у меня так не выводит ничего sad
              • 26709
              • 4 Posts
              Quote from: Int at Feb 18, 2010, 05:06 AM

              т.е. просто +color+ ?
              что-то у меня так не выводит ничего sad

              Попробуйте в функции ManageCart сразу после
              var color = GetCookie("color"+fields[0]);
              if (color == null) color = "";


              добавить
              alert(color);
              


              Добавьте товар в корзину и перейдите на саму страницу с корзиной. Выскочит окно, посмотрите что в нем написано.

              Если будет пусто или null, то убедитесь. что в чанке товара у вас правильно подставляется путь к картинке.
                • 12992
                • 21 Posts
                Нашел свой косяк) Теперь с этим все ок.
                Но надо такое же поле добавить еще и в письмо, и в админку
                  • 26709
                  • 4 Posts
                  Quote from: Int at Feb 18, 2010, 10:22 AM

                  Нашел свой косяк) Теперь с этим все ок.
                  Но надо такое же поле добавить еще и в письмо, и в админку
                  Я рад, что получилось smiley А как вы плалируете вставить картинку в письмо? В админку понятно, а в письме же нужно тогда прикрепить картинки к телу письма? Или вы хотите просто указать абсолютный путь ?
                    • 12992
                    • 21 Posts
                    Да я не картинку вставляю) Показатели номенклатурный номер и вес)
                      • 26709
                      • 4 Posts
                      Quote from: Int at Feb 19, 2010, 01:22 AM

                      Да я не картинку вставляю) Показатели номенклатурный номер и вес)

                      Что касается самого письма пользователя, то это просто.

                      Ноходим в коде сниппета строку
                                                  $ADDTLINFO[$i] = $_POST[$field_addtlinfo];
                              }


                      И сразу после нее вставляем
                      $color[$i] = $_COOKIE['color'.$ID[$i]]
                      


                      Затем ищем
                                      $tablemail1 = str_replace("[+shop.mail.price+]", $PRICE[$i], $tablemail1);
                      

                      И сразу после нее вставляем
                                      $tablemail1 = str_replace("[+shop.mail.color+]", $color[$i], $tablemail1);
                      


                      Все, теперь в шаблоне письма вам доступен плейсхолдер [+shop.mail.color+] , вместо которого будет подставляться Цвет. Вместо color в нашем примере вы можете ставить что-то другое. И так для любого параметра. Я этот пример не тестировал, так что проверьте его. Если вдруг не заработает, отпишитесь.

                      Если вам надо в админке отображать все это, нужно завести отдельную ячейку в БД для каждой из записей и в скрипт внести команду добавления. Например, создайте в таблице shop_order_detail создайте еще одну ячейку, в нашем случае color с типом text - вставляем ее в самый конец.
                      Потом заходим в файл snippet/shop/include/saveorder_db.inc.php и ищем строку
                      INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name`)
                      VALUES ( '".$numorder."', '".$QUANTITY[$i]."', '".$PRICE[$i]."', '".$ID[$i]."', '".$NAME[$i]."');
                      


                      и заменяем ее на
                      INSERT INTO `".$shop_order_detail."` ( `numorder` , `quantity` , `price` , `id` , `name`, `color`)
                      VALUES ( '".$numorder."', '".$QUANTITY[$i]."', '".$PRICE[$i]."', '".$ID[$i]."', '".$NAME[$i]."', '".$color[$i]."');
                      


                      Все - наш цвет будет записан в БД. Осталось только вывести его в админке. Идем в файл snippet/shop/include/view.inc.php и ищем
                      <th  class='gridHeader' width='20%'>".$shop_lang['name']."</th>
                      


                      сразу после нее вставляем
                      <th  class='gridHeader' width='20%'>".$shop_lang['color']."</th>
                      

                      Этим мы завели отдельный столбец в таблице заказа в админке. Тут в заголовке стоит языковая переменная - можно ее создать самому для нашего случая, а можно просто вместо $shop_lang[’color’] вписать прямо в файл название столбца, но только позаботиться, чтобы файл был в правильной кодировке.

                      И последний штрих. Ищем чуть дальше
                      			<td class='gridItem'>".$order['name']."</td>
                      


                      и сразу после нее пишем
                      			<td class='gridItem'>".$order['color']."</td>
                      


                      Все, готово.

                      Единственное, что у нас теперь добавилась одна колонка, поэтому строки ИТОГО и т.д. поплывут, т.к. у них colspan=’3’. Просто во всех местах ниже по тексту кода вместо 3 поставьте 4. Если будет еще одна колонка, то 5 и.д.