Сохраняет ли Invision Power Board v3.0.3 незашифрованные версии сообщений? - PullRequest
0 голосов
/ 12 ноября 2009

Редактировать: Это форум IPB (Invision Power Board), а не PHPBB, как первоначально опубликовано. Мои скромные извинения.

Я пытаюсь написать виджет, который отображает выборку популярных тем на нашем форуме. Тем не менее, разбор тегов bbcode немного затруднителен. Мы используем PEAR BBCodeParser, поэтому обработка тегов bbcode не является проблемой. Но реальная проблема заключается в том, что IPB, по-видимому, частично кодирует сообщения из bbcode в html, прежде чем сохранять их в базе данных. Я говорю частично, потому что некоторые теги bbcode конвертируются, другие нет.

Например, рассмотрим этот необработанный bbcode:

О боже, я [b], поэтому [/ b] смущен: sweat:

Получает закодированную в базу данных (в частности, таблицу bbprefix _posts) как

OMG I am [b]so[/b] embarassed <img src="http://mysite.com/frown.gif" class="bbc_emoticon">

Итак, мой вопрос: есть ли место в нашей базе данных ipb, где эта строка полностью не закодирована? Я полагаю, что это должно быть где-то, потому что, когда вы отвечаете на тему, он заполняет ваш текстовое поле необработанным bbcode, включая смайлики, без какого-либо преобразования в html.

1 Ответ

1 голос
/ 12 ноября 2009

Глядя на раздел справки phpBB по этому здесь , кажется, что он не хранит его полностью не закодированным и фактически выполняет его повторный анализ каждый раз, когда ему необходимо отобразить его или извлечь база данных для пользователя. Возможно, вы захотите взглянуть на функцию generate_text_for_display, хотя документации о том, как это работает, довольно мало.

...