Решение. Удаление форума исправление ошибок

Автор keka, 08 декабря 2005, 15:33:41

« назад - далее »

0 Пользователи и 12 гостей просматривают эту тему.

keka

old
   1187         $request = db_query("
   1188                 SELECT ID_TOPIC
   1189                 FROM {$db_prefix}topics
   1190                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ')', __FILE__, __LINE__);
   1191         $topics = array();
   1192         while ($row = mysql_fetch_assoc($request))
   1193                 $topics[] = $row['ID_TOPIC'];
   1194         mysql_free_result($request);
   1195
   1196         require_once($sourcedir . '/RemoveTopic.php');
   1197         removeTopics($topics, false);
   1198
   1199         // Delete the board's logs.
   1200         db_query("
   1201                 DELETE FROM {$db_prefix}log_mark_read
   1202                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ')', __FILE__, __LINE__);
   1203         db_query("
   1204                 DELETE FROM {$db_prefix}log_boards
   1205                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ')', __FILE__, __LINE__);
   1206         db_query("
   1207                 DELETE FROM {$db_prefix}log_notify
   1208                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ')', __FILE__, __LINE__);
   1209
   1210         // Delete this board's moderators.
   1211         db_query("
   1212                 DELETE FROM {$db_prefix}moderators
   1213                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ')', __FILE__, __LINE__);
   1214
   1215         // Delete any extra events in the calendar.
   1216         db_query("
   1217                 DELETE FROM {$db_prefix}calendar
   1218                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ')', __FILE__, __LINE__);
   1219
   1220         // Delete any permissions associated with these boards.
   1221         db_query("
   1222                 DELETE FROM {$db_prefix}board_permissions
   1223                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ')', __FILE__, __LINE__);
   1224
   1225         // Delete any message icons that only appear on these boards.
   1226         db_query("
   1227                 DELETE FROM {$db_prefix}message_icons
   1228                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ')', __FILE__, __LINE__);
   1229
   1230         // Delete the boards.
   1231         db_query("
   1232                 DELETE FROM {$db_prefix}boards
   1233                 WHERE ID_BOARD IN (" . implode(', ', $boards_to_remove) . ")
   1234                 LIMIT " . count($boards_to_remove), __FILE__, __LINE__);



new   
   1187         $request = db_query("SELECT ID_TOPIC FROM {$db_prefix}topics WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) ."')", __FILE__,   __LINE__);
   1188         $topics = array();
   1189         while ($row = mysql_fetch_assoc($request))
   1190                 $topics[] = $row['ID_TOPIC'];
   1191         mysql_free_result($request);
   1192
   1193         require_once($sourcedir . '/RemoveTopic.php');
   1194         removeTopics($topics, false);
   1195
   1196         // Delete the board's logs.
   1197         db_query("
   1198                 DELETE FROM {$db_prefix}log_mark_read
   1199                 WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) ."')", __FILE__, __LINE__);
   1200         db_query("
   1201                 DELETE FROM {$db_prefix}log_boards
   1202                 WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) ."')", __FILE__, __LINE__);
   1203         db_query("
   1204                 DELETE FROM {$db_prefix}log_notify
   1205                 WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) . "')", __FILE__, __LINE__);
   1206
   1207         // Delete this board's moderators.
   1208         db_query("
   1209                 DELETE FROM {$db_prefix}moderators
   1210                 WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) ."')", __FILE__, __LINE__);
   1211
   1212         // Delete any extra events in the calendar.
   1213         db_query("
   1214                 DELETE FROM {$db_prefix}calendar
   1215                 WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) . "')", __FILE__, __LINE__);
   1216
   1217         // Delete any permissions associated with these boards.
   1218         db_query("
   1219                 DELETE FROM {$db_prefix}board_permissions
   1220                 WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) . "')", __FILE__, __LINE__);
   1221
   1222         // Delete any message icons that only appear on these boards.
   1223         db_query("
   1224                 DELETE FROM {$db_prefix}message_icons
   1225                 WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) . "')", __FILE__, __LINE__);
   1226
   1227         // Delete the boards.
   1228         db_query("
   1229                 DELETE FROM {$db_prefix}boards
   1230                 WHERE ID_BOARD IN ('" . implode(', ', $boards_to_remove) . "')
   1231                 LIMIT " . count($boards_to_remove), __FILE__, __LINE__


Mavn

немного другое решение

Файл Sources/Subs-Boards.php

Находим 4 строки  ~1154:



// Remove one or more boards.
function deleteBoards($boards_to_remove, $moveChildrenTo = null)
{
global $db_prefix, $sourcedir, $boards;

после добавить следующее:

if (empty($boards_to_remove))
return true;


SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

keka

Да это то решение но ошибки в коде оно не исправляет ..  :D

Mavn

я дома посмотрю разберу твой код и сделаю мод чтобы можно было поправить баг :) автоматом :)
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.