Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Кодирование тела письма


Recommended Posts

Почему в движке само сообщение письма (html, текст) не кодируется в base64 + chunk_split или quoted-printable.
Есть ли какой-то общепринятый стандарт?


Один из заказчиков столкнулся с проблемой ломаной кодировки в письме

https://prnt.sc/kotr0u
При присмотре исходника тела письма видно, что строка переносится на 998 символе, при этом некорректно

Link to post
Share on other sites

ну так и смотрите в письмо, скорей всего ошибка здесь

 

 

Link to post
Share on other sites

Если бы покупатели умели вставлять текст в способ оплаты)

Link to post
Share on other sites

  • 1 month later...
  • 1 year later...

причина в том, что при большой строке происходит ее разбивка для соответствия стандарту RFC 821 (лимит 1000 символов на строку)

 

только разбивка средствами движка в system\library\mail.php сделана некорректно - без учета многобайтовых кодировок и самого места разбивки (т.е. может рубить и посреди тегов и посреди ссылки)

что и приводит к появлению кракозябр в письмах с длинными строками

Link to post
Share on other sites
В 13.10.2018 в 15:39, shoputils сказал:

 

а для ocStore 3 подскажете куда капать? Вторую замену я нашел, а вот этого кода там нет: 

 

	public function setHtml($html) {
		$this->html = $html;
		$this->html = chunk_split(base64_encode($html));
	}

Файлы прикрепил. Буду благодарен за помощь

smtp.php mail.php

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Similar Content

    • By Sunser
      900 12
      Доступ к обновлениям: 300.00 руб за 6 месяцев
      Доступ к обновлениям: 4.00 USD за 6 месяцев
      Скачать/Купить дополнение


      Subscribe_pro - улучшенная подписка на новости
      Subscribe_pro  - улучшенная подписка на новости
       
      Расширение подходит и тестировалось на версиях Opencart 2.0, 2.1, 2.2, 2.3 и 3.0
      Расширение подходит и тестировалось на версиях ocStore 2.1, 2.3 и 3.0
      Данные версии CMS брались с официальных сайтов OpenCart и ocStore.
       
       
      -- Установка расширения:
      1) Зайдите в свой установщик модификаторов, в админ панели, выберите модуль нужной версии, после чего установите;
      2) После установки зайдите в модификаторы и обновите свои модификаторы;
      3) Потом перейдите в Система > Группа пользователей, там выберите свой профиль, обычно это Администратор или какой вам надо где нужен что бы модуль отображался. И в выбранном вами профиле дайте права на просмотр и изменение модуля, он там будет в списке. Или же просто нажмете выбрать все, после чего сохраните настройки. 
      Если этого не сделать, модуль не появится в меню и вы не сможете его редактировать.
      После чего модуль появится в разделе > Маркетинг > «Subscribe_pro».
      4) После этого зайдите в модули или расширения и выберите сам модуль и настройте его;
      5) После настройки модуля зайдите в раздел "Дизайн >> Макеты" и выберите страницу и место где вы хотите вывести модуль.
      -- Что может модуль:
      1. Модуль выводит на сайт форму для подписки, которую можно изменять из админки;
      2. Модуль мультиязычный, потому подстраивается под версию языка и его настройки тоже;
      3. Модуль имеет письма и свой шаблон для уведомления на email при подписке, которые можно будет изменять под себя;
      4. Модуль заполняет поле email при авторизации;
      5. Уведомления на почту пользователя при подписке;
      6. Уведомления на почту администратора при подписке;
      7. Если зарегистрированный пользователь не подписан в личном кабинете, то модуль может подписывать его;
      8. Модуль может подключать минифицированные js и ccs файлы;
      9. Следит за созданием файлов для выгрузку в exel;
      10. В модуле можно отдельно устанавливать тему письма и кому уведомлять;
      11. Модуль ведет отдельную страницу подписок, в которой можно:
       - Следить за информацией кто подписался;
       - Редактировать того, кто подписался;
       - Добавлять новые подписки с админки;
       - Фильтровать эти подписки по следующим полям:
       -- По ID;
       -- По Email;
       -- По ФИО пользователя;
       -- Авторизированный пользователь или нет;
       -- По дате;
      12. Контроль созданных файлов для выгрузки в формате exel;
      13. Удалять подписки;
      14. Очищать полностью всю базу подписок;
      15. Модуль добавляет свой пункт в раздел Почта для рассылки с сайта;
      Зачем нужен этот модуль и как он работает?
      Данный модуль создан для удобного добавления формы подписки на сайт OpenCart, в которой можно было подписывать пользователей на новости и рассылки разного типа.
      В модуле можно удобно управлять подписками, фильтровать, экспортировать ил делать по ним рассылку с пункта "Почта".
      Модуль можно выводить в разной  части сайта.

      Модуль не заменяет никаких файлов, запись своих подписок он ведет в отдельной таблице, которую создает при установке.
      В админке модуля можно задавать свои стили для модуля, так же все настройки можно менять на уровне кода под себя, если вы разработчик.
      Проблемы и исправление модуля:
      1. Вы установили модуль, обновили модификаторы, но он нигде не появился, в таком случае вам нужно в разделе «группа пользователей» дать разрешение на просмотр или изменение модуля;
      2. При скачивании exel, выдает ошибку. В таком случае может быть ошибка с правами или лучше написать автору модуля, после чего ошибку быстро исправит;
      3. При ошибке или баге пишите автору модуля, после чего в ближайшие время ошибку или баг будет поправлено;
       
      Если вы заметите какие-то неполадки или у вас будет предложение по улучшению самого модуля или вам нужно доработать модуль для личных целей, пишите в личное сообщение данного сервиса, после чего я вам обязательно отвечу.
       
      Будьте внимательные к описанию данного модуля, его характеристикам и скринов приложенным к нему перед приобретением модулям. Если же вам что-то не понятно или есть вопросы перед приобретением, можете написать автору модуля и уточнить свои вопросы к данному модулю
       
      Убедительная просьба, если вы заказываете дополнительные платные услуги по модулю, заранее согласуйте с автором, поскольку автор может быть занят или отсутствовать.
      Добавил Sunser Добавлено 22.04.2020 Категория Письма, почта, рассылки, sms Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0 ocStore 3.0
      2.3.0.2.4
      2.3
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1 Обращение к серверу разработчика Нет  
    • By Sunser
      Subscribe_pro  - улучшенная подписка на новости
       
      Расширение подходит и тестировалось на версиях Opencart 2.0, 2.1, 2.2, 2.3 и 3.0
      Расширение подходит и тестировалось на версиях ocStore 2.1, 2.3 и 3.0
      Данные версии CMS брались с официальных сайтов OpenCart и ocStore.
       
       
      -- Установка расширения:
      1) Зайдите в свой установщик модификаторов, в админ панели, выберите модуль нужной версии, после чего установите;
      2) После установки зайдите в модификаторы и обновите свои модификаторы;
      3) Потом перейдите в Система > Группа пользователей, там выберите свой профиль, обычно это Администратор или какой вам надо где нужен что бы модуль отображался. И в выбранном вами профиле дайте права на просмотр и изменение модуля, он там будет в списке. Или же просто нажмете выбрать все, после чего сохраните настройки. 
      Если этого не сделать, модуль не появится в меню и вы не сможете его редактировать.
      После чего модуль появится в разделе > Маркетинг > «Subscribe_pro».
      4) После этого зайдите в модули или расширения и выберите сам модуль и настройте его;
      5) После настройки модуля зайдите в раздел "Дизайн >> Макеты" и выберите страницу и место где вы хотите вывести модуль.
      -- Что может модуль:
      1. Модуль выводит на сайт форму для подписки, которую можно изменять из админки;
      2. Модуль мультиязычный, потому подстраивается под версию языка и его настройки тоже;
      3. Модуль имеет письма и свой шаблон для уведомления на email при подписке, которые можно будет изменять под себя;
      4. Модуль заполняет поле email при авторизации;
      5. Уведомления на почту пользователя при подписке;
      6. Уведомления на почту администратора при подписке;
      7. Если зарегистрированный пользователь не подписан в личном кабинете, то модуль может подписывать его;
      8. Модуль может подключать минифицированные js и ccs файлы;
      9. Следит за созданием файлов для выгрузку в exel;
      10. В модуле можно отдельно устанавливать тему письма и кому уведомлять;
      11. Модуль ведет отдельную страницу подписок, в которой можно:
       - Следить за информацией кто подписался;
       - Редактировать того, кто подписался;
       - Добавлять новые подписки с админки;
       - Фильтровать эти подписки по следующим полям:
       -- По ID;
       -- По Email;
       -- По ФИО пользователя;
       -- Авторизированный пользователь или нет;
       -- По дате;
      12. Контроль созданных файлов для выгрузки в формате exel;
      13. Удалять подписки;
      14. Очищать полностью всю базу подписок;
      15. Модуль добавляет свой пункт в раздел Почта для рассылки с сайта;
      Зачем нужен этот модуль и как он работает?
      Данный модуль создан для удобного добавления формы подписки на сайт OpenCart, в которой можно было подписывать пользователей на новости и рассылки разного типа.
      В модуле можно удобно управлять подписками, фильтровать, экспортировать ил делать по ним рассылку с пункта "Почта".
      Модуль можно выводить в разной  части сайта.

      Модуль не заменяет никаких файлов, запись своих подписок он ведет в отдельной таблице, которую создает при установке.
      В админке модуля можно задавать свои стили для модуля, так же все настройки можно менять на уровне кода под себя, если вы разработчик.
      Проблемы и исправление модуля:
      1. Вы установили модуль, обновили модификаторы, но он нигде не появился, в таком случае вам нужно в разделе «группа пользователей» дать разрешение на просмотр или изменение модуля;
      2. При скачивании exel, выдает ошибку. В таком случае может быть ошибка с правами или лучше написать автору модуля, после чего ошибку быстро исправит;
      3. При ошибке или баге пишите автору модуля, после чего в ближайшие время ошибку или баг будет поправлено;
       
      Если вы заметите какие-то неполадки или у вас будет предложение по улучшению самого модуля или вам нужно доработать модуль для личных целей, пишите в личное сообщение данного сервиса, после чего я вам обязательно отвечу.
       
      Будьте внимательные к описанию данного модуля, его характеристикам и скринов приложенным к нему перед приобретением модулям. Если же вам что-то не понятно или есть вопросы перед приобретением, можете написать автору модуля и уточнить свои вопросы к данному модулю
       
      Убедительная просьба, если вы заказываете дополнительные платные услуги по модулю, заранее согласуйте с автором, поскольку автор может быть занят или отсутствовать.
    • By Sfeno
      Мод позволяет максимально возможно приблизить инструмент Маркетинг/Почта к обязательным пунктам "Требований Яндекса к честным рассылкам", а именно:
      1. В конец каждого письма добавляется текст с сылкой на страницу отписки от рассылки. Прейдя по которой пользователь получит возможность отписаться от рассылок 2-мя кликами мышки. Или передумать.
      2. В заголовок сообщений добавлятся поле list-unsubscribe. Видя такой заголовок, почтовый сервис отобразить кнопку "Отписаться" в панели инструментов. Поведение этой кнопки следующее: при нажатии письмо будет удалено, клиент перейдет на ваш сайт, увидит "Вы отписаны от рассылки" и будет отписан без лишних вопросов.
          Как только клиент отпишется от рассылки, все получатели оповещений о заказах, получат письмо с темой "Отписка от рассылки" и e-mail клиента в тексте.
          Почитать весь текст "Требований" (настоятельно советую) можно здесь: https://yandex.ru/support/mail-new/web/spam/honest-mailers.html
          
          Важно заметить, при отписке, клиент не удаляется из базы. Он  в личном кабинете, в поле "Подписка на новости" как-бы ставит "Нет". Поэтому если Вы шлете письма "Всем клиентам", то теложвижения пользователей по отписке будут впустую. Рассылайте рекламу только "Всем подписчикам на новости"!
       
      Установка:
      - если у Вас настроен в админке FTP, то загрузите скачанный архив через инструмент "Установка расширений". Перейдите в "Модификаторы" и нажмите в правом верхнем углу кнопку "Обновить".
      - если FTP не настроен, то распакуйте архив, скопируйте содержимое папки Upload без замены файлов в корень сайта. Файл install.ocmod.xml загрузите через установку расширений. Нажмите "Обновить" в "Модификаторы".
       
      Unsubscribe2x_v2.ocmod.zip - для OC 2.x
      Unsubscribe3x_v2.ocmod.zip - для OC 3.x
    • By Sfeno
      300
      Скачать/Купить дополнение


      Отписка от рассылки
          Мод позволяет максимально возможно приблизить инструмент Маркетинг/Почта к обязательным пунктам "Требований Яндекса к честным рассылкам", а именно:
      1. В конец каждого письма добавляется текст с сылкой на страницу отписки от рассылки. Прейдя по которой пользователь получит возможность отписаться от рассылок 2-мя кликами мышки. Или передумать.
      2. В заголовок сообщений добавлятся поле list-unsubscribe. Видя такой заголовок, почтовый сервис отобразить кнопку "Отписаться" в панели инструментов. Поведение этой кнопки следующее: при нажатии письмо будет удалено, клиент перейдет на ваш сайт, увидит "Вы отписаны от рассылки" и будет отписан без лишних вопросов.
          Как только клиент отпишется от рассылки, все получатели оповещений о заказах, получат письмо с темой "Отписка от рассылки" и e-mail клиента в тексте.
          Почитать весь текст "Требований" (настоятельно советую) можно здесь: https://yandex.ru/support/mail-new/web/spam/honest-mailers.html
          
          Важно заметить, при отписке, клиент не удаляется из базы. Он  в личном кабинете, в поле "Подписка на новости" как-бы ставит "Нет". Поэтому если Вы шлете письма "Всем клиентам", то теложвижения пользователей по отписке будут впустую. Рассылайте рекламу только "Всем подписчикам на новости"!
       
      Установка:
      - если у Вас настроен в админке FTP, то загрузите скачанный архив через инструмент "Установка расширений". Перейдите в "Модификаторы" и нажмите в правом верхнем углу кнопку "Обновить".
      - если FTP не настроен, то распакуйте архив, скопируйте содержимое папки Upload без замены файлов в корень сайта. Файл install.ocmod.xml загрузите через установку расширений. Нажмите "Обновить" в "Модификаторы".
       
      Unsubscribe2x_v2.ocmod.zip - для OC 2.x
      Unsubscribe3x_v2.ocmod.zip - для OC 3.x
      Добавил Sfeno Добавлено 18.12.2017 Категория Письма, почта, рассылки, sms Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1 ocStore 2.3
      2.2
      2.1 OpenCart.Pro, ocShop Не проверялось Обращение к серверу разработчика Старая цена  
    • By toporchillo
      Модуль позволяет в автоматическом режиме отслеживать статусы почтовых доставок
      и уведомлять покупателя об отправке и прибытии заказа.
      Для OpenCart 1.5.x. Требуется vQmod.
      Версия для OpenCart 2.x и 3.x также есть, но на другом сайте
      Если вы много заказов отправляете Почтой России или EMS. Если вы отправляете посылки наложенным платежом, то вам необходимо быть в курсе того, где сейчас посылки. Чтобы покупатель не забыл про свой заказ, надо уведомлять его о доставке. Есть сервис отслеживания доставок почты России, но модуль делает все автоматически.
      Подробнее на странице: http://sourcedistillery.com/auto-tracking_pochty_rossii_opencart.html
      УСТАНОВКА
      1. Убедитесь, что у вас установлен и включен vQmod, либо вручную внесите изменения
      вносимые файлом vqmod/xml/vqmod_order_track_no.xml.
      2. Скопируйте содержимое папки upload в файловую систему сайта поверх структуры папок.
      3. Установка и настройка модуля доступна в системе администрирования, на странице
      Дополнения - Доставка - Автотреккинг доставок Почты России
      4. В планировщик задач CRON пропишите команду
      wget -O - http://{адрес сайте}/admin/rupost_updater.php   Достаточно запускать скрипт раз в сутки. По ночам скрипт запускать не надо, а то можете беспокоить покупателей ночными SMS.
      Модуль не содержит в себе SMS-шлюза. SMS будет отправляться только если у вас в OpenCart уже есть отправка каких-нибудь SMS.
      Веб-сервис Почты России, располагается по адресу:
      https://tracking.pochta.ru   Веб-сервис, к которому обращается модуль, требует аутентификации! Необходимо зарегистрироваться и получить логин и пароль для доступа.

      Без заключения корпоративного договора с Почтой вы можете делать не более 100 запросов в сутки, этого хватит на небольшое количество заказов.
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.