Перейти к контенту
  • 0

Пропали темы.Ошибку нашел но не знаю как .


ilz

Вопрос

Версия у меня 1.1.2 и у меня часто появляется ошибка с таблицой ibf_topics.

После каждой ошибки я восстанавливал ее через админ панель и выяснил что после каждого восстановления пропадает одна тема с форума. Уже в сумме пропало где-то 15 тем у меня и одни из низ ыбли большие почти по 2000 сообщений. Так вот я взял и скачал базу себе на комп от форума и открыл и увидел что все сообщения тех тем остались целые и лежат в базе , но на форуме они не показываются. Потом мне сказали, что если такая ошибка происходит то лучше восстанавливать через phpmyadmin и я так и сделал и тема не пропала. Но как мне вернуть те темы которые пропали ? Вернее они не пропали , их просто форум не показывает. Я открыл таблице ibf_topics и увидел список всех тем ,но тех которые пропали там нету, А КаК МнЕ занести Эти темы туда?? Помогите.

Ссылка на комментарий
Поделиться на других сайтах

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

  • 0

Тебе нужно выяснить, что именно отсутствует у пропавших тем. Ведь если они есть в базе но не отображаются в форуме, то значит их оттуда при выборке пропускают. Возможно дело в неуказаном Ид топика, Ид форума. Сравни пропавшее с отображающимся и сделай выводы.

 

Если затрудняешься пусти меня в базу я посмотрю что к чему у тебя там. Стучись в аську завтра около 12 дня

Ссылка на комментарий
Поделиться на других сайтах

  • 0
я сделал вывод один , что нету этих тем в таблице ibf_topics и там есть "Запуск запроса" но что писать в запуск запроса я незнаю
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Значит, так. Было у тебя много тем. Темы пропали, но посты остались. В таблице ibf_posts куча постов, которые относятся к разным темам. Для каждой из этих тем нужно будет проделать описанные ниже операции.

 

1. Надо узнать id пропавшей темы. Находим в phpMyAdmin'e пост, который есть в базе, но не показывается на форуме. Желательно искать вручную, но можно попробовать и запросом.

SELECT post, topic_id FROM ibf_posts WHERE post LIKE '%слова_из_поста%'

post LIKE 'блаблабла' - значит "найти такие посты, в которых содержится блаблабла"

Результат запроса - пост, который пропал, + ID темы. ID темы записываем на бумажку!

Можно попробовать искать по автору:

SELECT post, topic_id FROM ibf_posts WHERE author_name = 'Имя_Автора'

 

2. Надо посчитать число постов в теме. ID темы мы уже записали - достаём бумажку, где оно записано!

SELECT COUNT(author_id) FROM ibf_posts WHERE topic_id = 'ID_темы'

Отнимаем от результата единицу и записываем полученное число на бумажку!

 

3. Нужно узнать, кто открыл тему. Делаем запрос

SELECT author_id, post_date, author_name FROM ibf_posts WHERE topic_id = 'ID_темы' ORDER BY post_date ASC

Нам нужна самая верхняя строчка результата. Записываем оттуда author_id, post_date, author_name.

 

4. Нужно узнать ID форума, куда поместить тему. Это проще самому вспомнить. Заходишь на борду, заходишь в тот форум, где была тема. В адресной строке браузера видишь что-то вроде SF=X (вместо Х и будет наше искомое число!). Если у тебя 1.2 или 1.3, то видишь там showforum=X - это одно и то же. Записываешь на бумажку.

 

5. Финальный запрос.

INSERT INTO ibf_topics (tid, title, description, state, posts, starter_id, start_date, starter_name, poll_state, views, forum_id, approved, author_mode) VALUES ('ID_темы_из_шага_1', 'Название темы - от балды!', 'Описание темы - тоже от балды!', 'open', 'Число_постов_из_шага_2', 'author_id_из_шага_3', 'post_date_из_шага_3', 'author_name_из_шага_3', 0, 'Число_просмотров_темы-нужно придумать от балды', 'ID_форума_из шага_4', 1, 1)

Где написано "от балды" - значит, любое придумай и подставь. Никакие кавычки из запроса не выкидывать! Затирать настоящими значениями только то, что внутри кавычек.

 

6. Когда тема появится, зайти в неё, запостить что-нибудь. Потом свой пост удалить. Вот всё и нормализовалось. :D

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.