Некорректно приходят сообщения с форума работающего на 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

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

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