如何在HTML表单文本框中输入尖括号,以便它们不会被“消毒”

时间:2012-03-30 15:16:48

标签: html escaping sanitization

不,我不想做任何邪恶的事情。

有一个我经常讨论的讨论网站使用类似于我现在输入的文本框,除了它没有点击斜体,粗体等的便利。人们发现你可以添加html标签到正在提交的文本和正确格式化的内容。然后有些人滥用了系统并开始插入IMG标签等。

该网站的回应是使用切肉刀而不是手术刀。他们似乎预先处理并用尖括号去除任何。这不仅排除了窃听它们的html标签,还包括每个 html代码,包括新段落。所以现在每个提交看起来都像一块大块的文本而根本没有任何格式。很明显,它们只是盲目地剥离尖括号内的任何东西,因为即使是像

这样的东西
It is nice <to see you> today.

最终成为

It is nice today.

所以我的问题是:有没有办法逃避尖括号,以便它们通过预处理尝试。他们正在做类似的事情:

if (char == '<')

我希望像“\ asciicode”这样的东西可以通过审查模块,但是可以通过那些用于正常解释html之后的内容来正确解释。

再一次,我只想要我的NEWLINES回来!

1 个答案:

答案 0 :(得分:3)

你想改变&lt;到&lt;和&gt;到&gt;

另外,“到&quot;和&amp;到&amp;