Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Гость RSS-Bot

Важное с Sysman.Ru: Дублируются темы

Рекомендованные сообщения

Гость RSS-Bot

Song: Симптомы: На форуме появляются дубликаты тем, при этом пользователи при создании новой темы или отправке ответа жалуются на сообщение об ошибке:

Цитата
Mail Error!

Could not send the email

Failed at 'mail' command

 

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

При этом они думают, что тема не создалась, нажимают в браузере "Назад" и снова сохраняют тему. Так появляется клон темы.

Дубликатов может быть столько, пока это им не надоест делать.

 

Ошибка происходит из-за того, что у пользователей на раздел или на тему есть подписки на email, а из-за неверной настройки smtp сервиса у вашего хостера, команда, которая посылает уведомление о теме/ответе на email, не срабатывает. На момент попытки отсылки email уведомлений тема уже создана. Но при ошибке форум останавливается и не редиректится на созданную тему.

 

Ошибка срабатывает в следующих случаях:

  • При создании темы. Если на раздел есть подписанные на email пользователи.
  • При ответе в тему. Если на тему есть подписанные на email пользователи.
  • При отправке в PM. Если у того, кому отправляем, установлена опция отправки копии PM сообщения на email.

А также в других ваших модах, которые используют любую из этих функций.

 

 

Решение: решением может быть только устранение неполадок в отправлении email сообщений у вашего хостера.

Как вариант, чтобы темы не плодились, можно временно отключить отсылку уведомлений. Для этого выполните 3 правки ниже. Кусочки, выделенные цветом, нужно вставить в ваш код форума:

 

1.

Цитата (Post.php)
        [color=green]/*****************************************************/[/color]        [color=green]// topic tracker[/color]        [color=green]// ------------------[/color]        [color=green]// Checks and sends out the emails as needed.[/color]        [color=green]/*****************************************************/[/color]        [b]function[/b] topic_tracker([color=#048284]$tid[/color]="", [color=#048284]$post[/color]="", [color=#048284]$poster[/color]="", [color=#048284]$last_post[/color]="" )        {                [b]global[/b] [color=#048284]$ibforums[/color], [color=#048284]$DB[/color], [color=#048284]$std[/color];                [color=green]// Song * debug[/color]                [b]return[/b] TRUE;                [b]if[/b] ([color=#048284]$tid[/color] == "")                {                        [b]return[/b] TRUE;                }

2.

Цитата (Post.php)
        [color=green]/*****************************************************/[/color]        [color=green]// Forum tracker[/color]        [color=green]// ------------------[/color]        [color=green]// Checks and sends out the new topic notification if[/color]        [color=green]// needed[/color]        [color=green]/*****************************************************/[/color]		        [b]function[/b] forum_tracker([color=#048284]$fid[/color]="", [color=#048284]$this_tid[/color]="", [color=#048284]$title[/color]="", [color=#048284]$forum_name[/color]="")        {                [b]global[/b] [color=#048284]$ibforums[/color], [color=#048284]$DB[/color], [color=#048284]$std[/color];                [color=green]// Song * debug[/color]                [b]return[/b] TRUE;                [b]if[/b] ([color=#048284]$this_tid[/color] == "")                {                        [b]return[/b] TRUE;                }

 

3.

Цитата (Messenger.php)
            [color=green]//-----------------------------------------------------[/color]            [color=green]// Has this member requested a PM email nofity?[/color]            [color=green]//-----------------------------------------------------[/color]                        [b]if[/b] ([color=#048284]$to_member[/color]['email_pm'] == 1)            {                [color=#048284]$to_member[/color]['language'] = [color=#048284]$to_member[/color]['language'] == "" ? 'en' : [color=#048284]$to_member[/color]['language'];                                [color=#048284]$this[/color]->email->get_template("pm_notify", [color=#048284]$to_member[/color]['language']);                            [color=#048284]$this[/color]->email->build_message( [b]array[/b](                                                    'NAME'   => [color=#048284]$to_member[/color]['name'],                                                    'POSTER' => [color=#048284]$ibforums[/color]->member['name'],                                                    'TITLE'  => [color=#048284]$ibforums[/color]->input['msg_title'],                                                    'LINK'   => "?act=Msg&CODE=03&VID=in&MSID=$new_id",                                                  )                                            );                                                            [color=#048284]$this[/color]->email->subject = [color=#048284]$ibforums[/color]->lang['pm_email_subject'];                [color=#048284]$this[/color]->email->to      = [color=#048284]$to_member[/color]['email'];                [color=green]//Song * debug[/color]                $this->email->send_mail();

 

После восстановления сервиса отправки email проделайте обратную операцию.

 

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...