从字面上输出数据库中的html

时间:2012-08-08 01:54:46

标签: php mysql html html-formatting

我在数据库中格式化了html标记(<变为&lt;等等。)

我遇到的问题是html标签按字面输出;而不是<b>Text</b>使文字变为粗体,而是显示为&lt;b&gt;

有人知道这是为什么吗?或者如何解决它? 这可能是一个非常简单的问题,我忽略了它。

网站上的输出: the website

数据库中的HTML代码: partial image of the data in the DB.

3 个答案:

答案 0 :(得分:2)

使用html_entity_decode()

echo html_entity_decode("&lt;b&gt;"); // <b>

答案 1 :(得分:1)

我认为你打算用<替换所有&lt;,等等,同时将HTML存储在数据库中。但我发现在您的数据库中,<script ...标记看起来像&amp;lt;script ...。 尝试将其替换为&lt;script ...之类的内容。 还要确保设置了正确的MIME类型。对于HTML页面,请使用:

header('Content-type: text/html');

答案 2 :(得分:0)

不是可能解码,而是确保不对其进行双重编码。如果您已在数据库中编码数据,然后在打印出来时再次对其进行编码,则应将其呈现为&lt;等