Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Guest RSS-Bot

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

Recommended Posts

Guest 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 проделайте обратную операцию.

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...