0

编辑:这是一个 IPB(Invision Power Board)论坛,而不是最初发布的 PHPBB。我谦虚的道歉。

我正在尝试编写一个小部件,以显示我们论坛中热门话题的样本。但是,解析 bbcode 标签有点麻烦。我们使用的是 PEAR BBCodeParser,所以处理 bbcode 标签不是问题。但真正的问题是,IPB 似乎将消息从 bbcode部分编码为 html,然后再将它们存储到数据库中。我说部分是因为某些 bbcode 标签被转换,而其他标签则没有。

例如,考虑这个原始的 bbcode:

天哪,我 [b]so[/b] 很尴尬 :sweat:

被编码到数据库(特别是bbprefix _posts 表)中

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

所以我的问题是,在我们的 ipb 数据库中是否有这个字符串完全未编码的地方?我认为它一定在某个地方,因为当您回复一个主题时,它会使用原始 bbcode(包括表情符号)填充您的 textarea 框,而无需任何转换为​​ html。

4

1 回答 1

1

在此处查看phpBB 帮助主题,似乎它并没有完全未编码地存储它,并且实际上每次需要显示它时都会重新解析它,或者将它从数据库中拉出供用户使用。您可能想看一下函数 generate_text_for_display,尽管关于它是如何工作的文档很少。

于 2009-11-12T16:36:50.683 回答