Jump to content

Работа с БД для IPB


Serhiys
 Share

Recommended Posts

Здравствуйте. Есть следующая проблема. В каждом форуме есть форум в нем подфорум, а в нем темы. Для каждой из этих страниц нужна своя уникальная шапка.

Для самого форума и подфорума я сделал шапку это не сложно. НО для каждой темы создавать свою шапку очень долго и нудно плюс мозги кипят. Нужен метод для автоматизации этого дела. В каждой тема которая принадлежит подфоруму должна быть такая же шапка как и у самого подфорума.

 

У меня появилась следующая идея: в базе данных объеденить темы подфорума с помощью дополнительного поля - ключа и для всех их прописать одну шапку.

 

Подскажите пожалуйста как это реализовать ибо не могу понять где и как достучаться к бд форума.

Если кто то предложит альтернативное предложение буду очень благодарен.

Link to comment
Share on other sites

У меня появилась следующая идея: в базе данных объеденить темы подфорума с помощью дополнительного поля - ключа и для всех их прописать одну шапку.
Плохая идея.
Подскажите пожалуйста как это реализовать
Вам уже подсказали здесь и здесь расшифровали.

 

<if test="$this->request['f'] == 181">
   Шапка для форума с ID 181 и тем, созданных в форуме с ID 181
</if>

  • Upvote 1
Link to comment
Share on other sites

Наверное я не совсем правильно выразился или что то не понял. То я уже сделал.

А как узнать каким образом тема в подфоруме привязана к самому форуму?

Link to comment
Share on other sites

Наверное я не совсем правильно выразился или что то не понял. То я уже сделал.
Скорее, второе.

 

Нужен метод для автоматизации этого дела. В каждой тема которая принадлежит подфоруму должна быть такая же шапка как и у самого подфорума.
Добавьте указанный код и посмотрите результат.
Link to comment
Share on other sites

Скорее, второе.

 

Добавьте указанный код и посмотрите результат.

 

Разобрался. Все работает. Огромное спасибо!)

Link to comment
Share on other sites

А как узнать каким образом тема в подфоруме привязана к самому форуму?

$this->request['f'] содержит ид текущего форума (при просмотре форума либо темы).

Link to comment
Share on other sites

  • 2 months later...

Здравствуйте! Подскажите как сделать SQL запрос, чтобы заменить часть слова в тексте поста на другую последовательность букв. Проблема в том, что после переезда на другой домен изменились пути к папкам со смайликами в сообщениях. Получается что необходимо .../путь/... "путь" заменить на "дорога". Имя таблицы и колонка в таблице известны.

Link to comment
Share on other sites

Я понимаю, что можно заменить одно слово другим или одну ссылку на другую. Будет ли это работать при замене последовательности символов в части слова (ссылки)? Т.е. символов не разделённых пробелом.

Edited by RaTed
Link to comment
Share on other sites

Будет ли это работать при замене последовательности символов в части слова (ссылки)?

Слова это та же последовательность символов в определенном порядке. Заменяете ли вы слово или последовательность любых символов серверу без разницы. Главное правильно составьте шаблоны замены чтобы не заменить там где это не требуется.

Link to comment
Share on other sites

Попробую еще раз, что то с первого раза не вышло. Спасибо. Я по специальности радиоинженер и с программированием работаю не профессионально, так, что-то понимаю. Не обессудте.

Link to comment
Share on other sites

После замены нужно сбросить кеш постов, иначе вы эффект на форуме не увидите. Проверить заменился текст или нет можно в таблице ibf_posts (ibf_ - префикс) поле post (для сообщений). Если не сбрасывать кеш, такой же запрос на замену нужно выполнить и для таблицы ibf_content_cache_posts поле cache_content.

 

ПС.

Если я не ошибаюсь, смайлы в оригинальных сообщения хранятся в виде макросов, так что достаточно просто сбросить кеш постов Система -> Кеши системы -> Сообщений в кеше

Link to comment
Share on other sites

так что достаточно просто сбросить кеш постов

Спасибо за подсказку с кэшем в таблицах. В системе где кэш я разобрался. На форуме как то все криво стоит, часть смайлов восстановилось после сброса в системе, часть осталась с кривой ссылкой. Вот этих кривых я и правлю вручную. Хорошо что папку нашел откуда брались картинки.

Link to comment
Share on other sites

Получилось. Символы заменил. Кэш в таблице тоже. Но вот на форуме проверяю сообщения,- ссылка правильная, а картинки нет. Пересохраняю сообщение, все появляется. Куда еще заглянуть?

Link to comment
Share on other sites

Нашел. Еще раз сбросил кэш сообщений в системе. Сброс в таблице почему то не сработал.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...