Некорректно приходят сообщения с форума работающего на PhpBB

Некорректно приходят сообщения с форума работающего на PhpBB

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

Не корректное отображение сообщения при регистрации на форуме

На скриншоте видно что вместо темы сообщения пользователь видит: Не указана тема сообщения.

Ну кому это понравится? Верно! Никому!

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

Не корректное отображение сообщения в phpbb

Урааа! - подумал я сначала, как увидел тему сообщения "Активация нового пароля" на том самом месте где это и нужно, подумал работает, но когда открыл письмо увидел кракозябры какие то.

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

Примечание! Прежде чем изменять файлы рекомендуется предварительно сделать резервные копии.

Так что же я сделал, что у меня появилось такое вот сообщение со знаками вопросов вместо русских букв. Всего навсего каракули появились после того как я открыл файл user_activate_passwd.txt (хранится он в папке email по пути кореньвашегосайта/language/ru/email/), в котором и хранится весь текст сообщения отправляемый пользователям, и поменял его кодировку на ANSI. В общем так делать не следует.

А теперь перейдем к решению проблемы. И поможет нам одна не плохая и бесплатная программа Notepad++.

В пример я буду брать тот файл который и редактировал каждый раз для решения данной проблемы, а именно файл user_activate_passwd.txt. Стоит учесть что если например при регистрации письмо отображается не корректно то и остальные уведомления наверняка будут отображаться точно также. Лучше всего проверить заранее каждый файл. Но об этом чуть позже.

Теперь нам необходимо скачать нужный нам файл user_activate_passwd.txt который находится по адресу ваш_домен/language/ru/email. Подключаетесь по FTP к своему сайту, находите этот файл и скачиваете в удобное для Вас место.

Файл письма с текстом активации пароля

После того как файл скачан его необходимо открыть программой Notepad++ и указать кодировку UTF-8 (без BOM)

Изменение кодировки

Кодировку необходимо изменить у каждого файла из папки email которая, напомню, расположена по адресу  ваш_домен/language/ru/email.

Далее рассмотрим за какие уведомления отвечает каждый файл:

admin_activate.txt - Запрос на активацию пользователя. Уведомление приходит администратору форума в том случае, если в настройках установлена активация нового пользователя администратором.

admin_send_email.txt - Сообщение, которое приходит пользователю при рассылку администратором через администраторский центр.

admin_welcome_activated.txt - Уведомление пользователя об успешно активации его учетной записи администратором.

admin_welcome_inactive.txt - Сообщение уведомляет о том что учетная запись создана и ожидает активации администратором форума.

email_notify.txt - Сообщение приходит в том случае если у пользователя на форуме есть друг и он решил с ним поделиться какой-либо темой. В сообщении будет указана ссылку на тему, которой хотят поделиться с пользователем.

forum_notify.txt - Уведомления о появлении новых тем в том разделе форума на который подписан пользователь.

group_added.txt - Данное сообщение уведомляет пользователя о том что его перемещают в другую группу на форуме.

group_approved.txt - Уведомление об успешном подтверждении заявки поданной на вступление в какую-либо группу на форуме

group_request.txt - Сообщение приходит лидеру форумной группы, уведомляющее его о новой поданной заявке на вступление в группу от пользователя.

installed.txt - А это сообщение думаю не играет особой роли чтобы с ним возиться так как придет всего один раз после успешной установки форума.

newtopic_notify.txt - Уведомление о новых темах в разделах форума на которые подписан пользователь.

pm_report_closed.txt - Уведомление о закрытой жалобе на личное сообщение от другого пользователя.

pm_report_deleted.txt - Уведомление об удалении жалобы на личное сообщение от другого пользователя.

post_approved.txt - Данное сообщение приходит в том случае когда установлена настройка проверки сообщений модератором перед их размещением.  Уведомляет об одобрении сообщения.

post_disapproved.txt - Данное сообщение приходит в том случае когда установлена настройка проверки сообщений модератором перед их размещением. Уведомляет о не одобренном сообщении пользователя и содержит причину отклонения сообщения.

privmsg_notify.txt - Уведомление пользователя о полученном новом личном сообщении.

profile_send_email.txt - Сообщение отсылается в том случае, когда пользователю другой пользователь отправляет письмо на e-mail адрес через форму, установленную на форуме.

profile_send_im.txt - Сообщение приходит если пользователю другой пользователь отсылает письмо с помощью сервиса IM.

report_closed.txt - Уведомление о закрытой жалобе на сообщение от другого пользователя в какой-либо теме.

report_deleted.txt - Уведомление аналогичное уведомлению в report_closed.txt, но уже об удаленной жалобе.

topic_approved.txt - В случае если на форуме установлена настройка проверки тем модератором перед их размещением, данное сообщение уведомит пользователя об  одобрении созданной им темы.

topic_disapproved.txt - В случае если на форуме установлена настройка проверки тем модератором перед их размещением, данное сообщение уведомит пользователя об  отклонении созданной им темы. В письме также указывается причина отклонения.

topic_notify.txt - Уведомляет пользователя о новых ответах в теме на которую он подписан.

user_activate.txt - Сообщение уведомляющее о деактивации администратором учетной записи пользователя. Сообщение содержит ссылку на повторную активацию.

user_activate_inactive.txt - Сообщение о деактивации учетной записи пользователя. Администратору нужно будет произвести повторную активацию.

user_activate_passwd.txt - Ну а с этим файлом думаю все понятно, так как о нем я и писал в статье, это сообщение с информацией по восстановлению забытого пароля.

user_reactivate_account.txt - Уведомляет пользователя о том, что он должен повторно активировать свою учетную запись.

user_remind_inactive.txt - Уведомление о том, что пользователь до сих пор не активировал свою учетную запись.

user_resend_inactive.txt - Сообщение уведомляет о том, что пользователь должен активировать свою учетную запись, перейдя по заранее сгенерированной ссылке.

user_welcome.txt - Сообщение уведомляет об успешной регистрации на форуме.

user_welcome_inactive.txt - И наконец последний файл, уведомляющий пользователя о том, что он должен активировать свою учетную запись, перейдя по заранее сгенерированной ссылке.

Вот мы и рассмотрели какой файл и о чем уведомляет пользователя.

Напомню еще раз что каждый файл необходимо открыть в текстовом редакторе Notepad++ и изменить кодировку на UTF-8 (без BOM).

Далее загружаем все файлы обратно на сервер, при запросе о замене соглашаемся.

И еще одно важное действие которое необходимо сделать чтобы все изменения вступили в силу, так это в админ панели форума во вкладке Общие необходимо сбросить кэш:

Сброс кэша в phpbb

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

Корректное отображение сообщения

Тема сообщения там где надо и кириллица отображается корректно. Думаю эта информация будет полезна тем кто столкнется с подобной проблемой.

Вот и все на этом.

Поделитесь в соц сетях...
Share on VK
VK
Share on Facebook
Facebook
Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Email this to someone
email

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *