Skip to content

Ошибка при удалении сообщений. 3.4.7

Здравствуйте уважаемые участники форума.

У меня такая проблема (как я понял, не только у меня), при удалении сообщений из панели модератора появляется ошибка базы данных. Отключал все хуки - не помогло. Поиск также никаких результатов не дал. Помогите пожалуйста разобраться.

Вот логи которые нашел в /cache/sql_error_latest.cgi:

 

Date: Fri, 20 Mar 2015 16:12:10 +0000
Error: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IN (18672) AND attach_rel_module='post'' at line 1
IP Address: - - /index.php?app=forums&module=moderate&section=moderate&do=p_hdelete&f=12&t=1200&pid[]=18672&st=&auth_key=313ad0b24f901789944e7815b867223a&return=modcp:deleted
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
mySQL query error: SELECT * FROM ibf_attachments WHERE  IN (18672) AND attach_rel_module='post'
.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
| File                                                                       | Function                                                                      | Line No.          |
|----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------|
| admin/applications/forums/sources/classes/moderate.php                     | [class_attach].bulkRemoveAttachment                                           | 1119              |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/applications/forums/modules_public/moderate/moderate.php             | [moderatorLibrary].postDeleteFromDb                                           | 418               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/applications/forums/modules_public/moderate/moderate.php             | [public_forums_moderate_moderate]._multiRemoveHardDeletedPost                 | 362               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/applications/forums/modules_public/moderate/moderate.php             | [public_forums_moderate_moderate]._postsManage                                | 248               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/sources/base/ipsController.php                                       | [public_forums_moderate_moderate].doExecute                                   | 306               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'

Featured Replies

Судя по всему, там баг связанный с изменением аргументов в методе class_attach::bulkRemoveAttachment в версии 3.4.7.

 

Открыть /admin/applications/forums/sources/classes/moderate.php

Найти

	$class_attach->bulkRemoveAttachment( array_keys( $posts ), $taskInitiated );

Заменить на

 

	$class_attach->bulkRemoveAttachment( array_keys( $posts ), 'attach_rel_id', $taskInitiated );

 

Хотя в офф дистрибутиве он уже давно пофиксин.

Хотя в офф дистрибутиве он уже давно пофиксин.

Когда только выпустили 3.4.7 была ошибка.

Кстати, в коде есть несколько мест, где вызывается метод bulkRemoveAttachment. Поэтому оптимальный вариант - перезалить файлы.

Сам баг с аргументом только в этом месте.

  • Author

Огромное тебе спасибо, помогло! На других форумах никто так и не смог помочь.

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.