Размер шрифта
Цвет фона и шрифта
Изображения
Озвучивание текста
Обычная версия сайта
Создание и поддержка сайтов web-aim.ru
Готовое решение для создания
корпоративного сайта
8 800 201-07-68
8 800 201-07-68
Заказать звонок
E-mail
hello@web-aim.ru
Написать нам
Услуги
  • Сайт
    • Разработка интернет-магазина с индивидуальным дизайном
    • Запуск готового интернет-магазина
    • Запуск готового корпоративного сайта
    • Разработка корпоративного сайта с индивидуальным дизайном
    • Создание уникальных кабинетов (b2b, партнерские, для сотрудников)
  • Поддержка и развитие сайтов на 1С-Битрикс
    • Поддержка и развитие сайтов
    • Комплексный аудит сайта
    • Интеграция с 1С
    • Технология: композитный сайт
  • Внедрение CRM и Битрикс24
    • Поддержка и развитие CRM Битрикс24
    • Интеграция CRM Битрикс24
    • Первичная интеграция CRM Битрикс24
    • Интернет-магазин + CRM
    • Коробочная версия Битрикс24.CRM
Проекты
  • CRM
  • Дизайн
  • Интернет-магазин
  • Корпоративные сайты
  • Техподдержка
О нас
  • О Компании
  • Партнеры
  • Мероприятия
  • Сертификаты
  • Как мы работаем
  • Отзывы
  • Реквизиты
Блог
Контакты
Партнерская программа
Карьера в WEB-AiM
8 800 201-07-68
8 800 201-07-68
Заказать звонок
E-mail
hello@web-aim.ru
Заказать звонок
Создание и поддержка сайтов web-aim.ru
Услуги
  • Сайт
    • Разработка интернет-магазина с индивидуальным дизайном
    • Запуск готового интернет-магазина
    • Запуск готового корпоративного сайта
    • Разработка корпоративного сайта с индивидуальным дизайном
    • Создание уникальных кабинетов (b2b, партнерские, для сотрудников)
  • Поддержка и развитие сайтов на 1С-Битрикс
    • Поддержка и развитие сайтов
    • Комплексный аудит сайта
    • Интеграция с 1С
    • Технология: композитный сайт
  • Внедрение CRM и Битрикс24
    • Поддержка и развитие CRM Битрикс24
    • Интеграция CRM Битрикс24
    • Первичная интеграция CRM Битрикс24
    • Интернет-магазин + CRM
    • Коробочная версия Битрикс24.CRM
Проекты
  • CRM
  • Дизайн
  • Интернет-магазин
  • Корпоративные сайты
  • Техподдержка
О нас
  • О Компании
  • Партнеры
  • Мероприятия
  • Сертификаты
  • Как мы работаем
  • Отзывы
  • Реквизиты
Блог
Контакты
Партнерская программа
Карьера в WEB-AiM
Написать нам
    Создание и поддержка сайтов web-aim.ru
    Услуги
    • Сайт
      Сайт
      • Разработка интернет-магазина с индивидуальным дизайном
      • Запуск готового интернет-магазина
      • Запуск готового корпоративного сайта
      • Разработка корпоративного сайта с индивидуальным дизайном
      • Создание уникальных кабинетов (b2b, партнерские, для сотрудников)
    • Поддержка и развитие сайтов на 1С-Битрикс
      Поддержка и развитие сайтов на 1С-Битрикс
      • Поддержка и развитие сайтов
      • Комплексный аудит сайта
      • Интеграция с 1С
      • Технология: композитный сайт
    • Внедрение CRM и Битрикс24
      Внедрение CRM и Битрикс24
      • Поддержка и развитие CRM Битрикс24
      • Интеграция CRM Битрикс24
      • Первичная интеграция CRM Битрикс24
      • Интернет-магазин + CRM
      • Коробочная версия Битрикс24.CRM
    Проекты
    • CRM
    • Дизайн
    • Интернет-магазин
    • Корпоративные сайты
    • Техподдержка
    О нас
    • О Компании
    • Партнеры
    • Мероприятия
    • Сертификаты
    • Как мы работаем
    • Отзывы
    • Реквизиты
    Блог
    Контакты
    Партнерская программа
    Карьера в WEB-AiM
      8 800 201-07-68
      Заказать звонок
      E-mail
      hello@web-aim.ru
      Написать нам
      Создание и поддержка сайтов web-aim.ru
      Телефоны
      8 800 201-07-68
      Заказать звонок
      Создание и поддержка сайтов web-aim.ru
      • Услуги
        • Услуги
        • Сайт
          • Сайт
          • Разработка интернет-магазина с индивидуальным дизайном
          • Запуск готового интернет-магазина
          • Запуск готового корпоративного сайта
          • Разработка корпоративного сайта с индивидуальным дизайном
          • Создание уникальных кабинетов (b2b, партнерские, для сотрудников)
        • Поддержка и развитие сайтов на 1С-Битрикс
          • Поддержка и развитие сайтов на 1С-Битрикс
          • Поддержка и развитие сайтов
          • Комплексный аудит сайта
          • Интеграция с 1С
          • Технология: композитный сайт
        • Внедрение CRM и Битрикс24
          • Внедрение CRM и Битрикс24
          • Поддержка и развитие CRM Битрикс24
          • Интеграция CRM Битрикс24
          • Первичная интеграция CRM Битрикс24
          • Интернет-магазин + CRM
          • Коробочная версия Битрикс24.CRM
      • Проекты
        • Проекты
        • CRM
        • Дизайн
        • Интернет-магазин
        • Корпоративные сайты
        • Техподдержка
      • О нас
        • О нас
        • О Компании
        • Партнеры
        • Мероприятия
        • Сертификаты
        • Как мы работаем
        • Отзывы
        • Реквизиты
      • Блог
      • Контакты
      • Партнерская программа
      • Карьера в WEB-AiM
      Написать нам
      • 8 800 201-07-68
        • Телефоны
        • 8 800 201-07-68
        • Заказать звонок
      • hello@web-aim.ru

      Как настроить форму заказа, чтобы в ней поместился даже самый длинный адрес

      Главная
      —
      Статьи о разработке и продвижении сайтов
      —
      Статьи о разработке и продвижении сайтов
      —Как настроить форму заказа, чтобы в ней поместился даже самый длинный адрес
      Ценные советы
      12 апреля 2019
      Лень читать? Сделай саммаризацию статьи с ai:
      Perplexity
      ChatGPT
      Yandex
      Grok
      Claude
      Google
      Google AI Mode

      Ванька свернул вчетверо исписанный лист и вложил его в конверт, купленный накануне за копейку... Подумав немного, он умокнул перо и написал адрес:

      На деревню дедушке.

      Потом почесался, подумал и прибавил: «Константину Макарычу».

      А.П. Чехов «Ванька»

      У заказчика возникла проблема – не помещался длинный адрес в отведенную строку таблицы в бланке заказа (печатные документы в «Заказах» для администраторов), который печатался и прикреплялся к коробке с товаром. Файл, содержащий предустановленный шаблон, находится в каталоге

      /bitrix/modules/sale/ru/reports/order_form.php

      Адрес не помещался в строку печатного документа.

      1.jpg

      Решили сделать, чтоб было красиво и аккуратно.

      Для этого написали код:

      <?
          $userAddr = $arOrderProps["ADDRESS"];
          $addrArray = explode (" ", $userAddr);
          $rowNum = 0;
          $addrRow = [];
          foreach($addrArray as $addrElement){
              if (strlen($addrRow[$rowNum]) + strlen($addrElement) > 55){
                  $rowNum++;	
              }	
              $addrRow[$rowNum] = $addrRow[$rowNum] . $addrElement . " ";
          }
      ?>
      <? 
          foreach($addrRow as $userAddr){?>
              <tr>
                  <td width="180"><font class="sub_header"></font></td>
                  <td style="border-bottom : 1px solid Black;">
                      <input class="user" size="50" style="border:0px solid #000000;" 
                      type="text" value="<?=$userAddr?>">
                  </td>
              </tr>		
          }
      ?>

      Этот метод универсален, и применяется не только для 1С-Битрикс.

      Разберем код.

      В переменной $userAddr хранится строка с адресом, который вводил пользователь. Строка адреса передается в документ в элементе массива $arOrderProps["ADDRESS"], содержащего данные формы, которую заполняет пользователь при оформлении заказа. Там может оказаться любое количество символов.

      Блок <tr>…</tr> в конце – это та часть html кода, которая отвечает за вывод строки с адресом, который находится в переменной $userAddr

      Изначально кроме переменной и блока вывода строки ничего не было. Но у пользователя «случился» длинный адрес и печатный документ был не читабелен.

      (Первая строка – это адрес, выбираемый из списков. Нас интересует вторая строка, в которой пользователь мог бы не заполнять первую половину адреса, но система его никак в этом не ограничивает, и он написал и выбрал всё, что мог)

      Пришлось писать код, чтоб было красиво и аккуратно.

      К переменной с адресом применили функцию explode:

      $addrArray = explode (" ", $userAddr);

      Она разбивает строку на массив элементов и использует в качестве сепаратора символ пробела. Можно было бы использовать запятую, но где гарантия, что все умеют ими пользоваться? :)

      Далее мы задаем номер элемента массива для первой строки:

      $rowNum = 0;

      foreach($addrArray as $addrElement){

      Цикл перебирает все элементы массива $addrArray и кладет их содержимое в $addrElement.

      То есть на каждой итерации этой функции мы в $addrElement имеем «слово» от пробела до пробела.

      Далее идет условие:

      if (strlen($addrRow[$rowNum]) + strlen($addrElement) > 55){

      Это условие проверяет, не превышает ли наша строка ограничение по длине (55 знаков), если к ней присоединить еще одно «слово».

      Если нет:

      $addrRow[$rowNum] = $addrRow[$rowNum] . $addrElement . " ";

      добавляет к текущей строке очередное «слово» $addrElement и пробел (у нас же теперь нет пробелов)

      Если да:

      $rowNum++;

      Инкрементирует номер элемента массива и новый элемент начинает заполнятся «словами». Это будет следующая строка.

      Повторяем, пока не кончатся «слова».

      Длина строки подбирается под конкретные условия. В нашем случае помещалось 55 символов.

      После завершения работы цикла у нас будет массив $addrRow[n], где n – количество строк. И в каждой строке будут содержаться «слова», суммарная длина которых не превышает 55 символов.

      Далее мы переходим к выводу массива на страницу.

      <?
          foreach($addrRow as $userAddr){
      ?>
              <tr>	
                      …
              </tr>	 	
      <?}?>

      Функция перебирает все элементы массива $addrRow[n], содержащие строки для вывода, и выполняет html-код столько раз, сколько строк содержится в массиве.

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

      2.jpg

      Если адрес будет очень длинным, то и строк будет больше.

      Существует в России адрес, ставший претендентом на внесение в книгу рекордов России, состоящий из 138 знаков.

      3.jpg

      (источник http://svidetel24.info/archives/35147)

      И даже он помещается теперь в документ и выглядит там хорошо и читабельно.

      4.jpg

      Еще статьи по теме

      Ценные советы
      GEO-оптимизация сайта: как подготовить статьи и товарные страницы под AI-поиск
      Ценные советы
      Как я создал и использую AI-ассистента в работе и в жизни менеджера и директора компании
      Ценные советы
      WorkForce Planner: как навести порядок в ресурсном планировании команды разработки в Битрикс24
      Назад к списку
      • Кейс 16
      • Аудит 12
      • Битрикс24 18
      • Маркетинг 26
      • Ценные советы 65
      • Интернет-магазины 29
      • Корпоративные сайты 7
      • Новости 21
      8 800 201-07-68
      8 800 201-07-68
      Заказать звонок
      E-mail
      hello@web-aim.ru
      Заказать звонок
      hello@web-aim.ru
      Аккредитованная ИТ-компания
      Политика конфиденциальности Согласие на обработку персональных данных Реквизиты и виды деятельности в области IT
      © 2026 WEB-AiM
      Кейсы и лайфхаки от WEB-AiM
      Всё о WEB-AiM в одном файле