Скрипт для phpmyadmin, взятый из приведенного выше php-кода. Делает тоже самое.
Инструкция: Войдите в phpmyadmin, откройте базу данных форума, во вкладку SQL вставьте приведенный скрипт для обновления статистики форума. Если у вас установлен sql_tbl_prefix, то вам нужно будет добавить его в приведенные запросы. Внимание! Все действия с базой данных необратимы, вы выполняете их на свой страх и риск.
-- Количество сообщений в каждой теме
UPDATE forums_topics LEFT JOIN (
SELECT topic_id, count(0) AS messages_cnt
FROM forums_posts WHERE queued=0
GROUP BY topic_id
) msg_cnt ON topic_id = forums_topics.tid
SET posts = coalesce(messages_cnt, 0);
-- Количество тем в каждом разделе
UPDATE forums_forums LEFT JOIN (
SELECT forum_id, count(0) AS topics_cnt, sum(posts) AS msg_cnt
FROM forums_topics WHERE approved=1
GROUP BY forum_id
) msg_cnt ON forum_id = forums_forums.id
SET topics = coalesce(topics_cnt, 0),
posts = coalesce(msg_cnt, 0);
-- Количество сообщений у каждого пользователя
UPDATE core_members LEFT JOIN (
SELECT author_id, count(0) AS messages_cnt
FROM forums_posts WHERE queued=0
GROUP BY author_id
) msg_cnt ON author_id = core_members.member_id
SET member_posts = coalesce(messages_cnt, 0);