如何制作textarea输出textarea代码而不破坏?

时间:2011-10-03 15:50:31

标签: php html

我创建了一个表单,用户可以输入html代码并在另一个textarea中输出代码。问题是如果用户输入的html在代码中有一个textarea,他们的代码就会破坏我的textarea表单。我看到其他网站正确显示任何HTML,所以如何在不破坏表单的情况下完成,并允许用户复制它以便它仍然保留为而不是一些转换后的代码,以便将它们粘贴到他们的网页上?

啊废话是啊我想通了,实际上问题不在于单独的htmlspecialchars代码我忘了添加一个返回我的功能之一哈哈。谢谢你们。

4 个答案:

答案 0 :(得分:4)

使用实体表示HTML中具有特殊含义的字符。由于您使用的是PHP,请使用htmlspecialchars

答案 1 :(得分:0)

有数以百万计的方法可以做到这一点。最简单的方法是在用户的输入上使用htmlspecialcharshtmlentities。这将在textarea框中创建一个视觉</textarea>而不关闭它。这实际上将其变为&lt;/textarea&gt;htmlspecialchars转换的字符少于htmlentities,并且在这种情况下使用通常更有意义,但是要进行研究。

strip_tags()也是一种可能性。

您还可以使用PCRE的正则表达式,甚至str_replace()或其他字符串操作函数来去除textarea,转换特殊字符等。

PECL也可作为BB代码扩展,如果您仍希望用户能够输入一些标签来设置其输出样式,则可以使用它。

答案 2 :(得分:-1)

<textarea><?php echo htmlentities($code); ?></textarea>

答案 3 :(得分:-1)

您必须将html代码转换为符号,因此不会将其视为html。

在回显之前,在textarea内容上使用函数htmlentities()