2012-02-19 71 views
0

我正在显示用户提交的HTML作为页面(用户的简历)的一部分。我注意到,如果用户的HTML get在数据库中被截断,由于字符限制,当显示HTML时,任何未被关闭的标签都会溢出到页面的其余部分。中止用户HTML和HTML溢出

我能够在div中包含HTML吗?另外一个解顺便说一句,我使用PHP。

谢谢。

+0

N.p这是本网站的用途。帮助人们:-)感谢您的接受!另外,你是否解析HTML输入(或输出)以删除恶意代码?如果你不删除像JavaScript这样的东西,那么很容易做CSS攻击。 – 2012-02-20 13:50:36

回答

3

如果您在HTML中有一个或多个未封闭的标签,您的DOM将变得无效并且后果不可预测。确保提交的HTML不会通过在数据库表中使用TEXT列来削减。

+0

谢谢。我没有按照最后的评论。如何使用TEXT列帮助?我相信我目前的问题是字符限制。我目前使用VARCHAR。 – arrogantprick 2012-02-19 22:44:21

+0

这是关键,VARCHAR通常最多可以存储255个字符,而TEXT是无限的。只需将列类型更改为TEXT。 – satoshi 2012-02-19 23:19:04

+0

@satoshi TEXT不是无限的。它有一个65534字节的硬限制。 MEDIUMTEXT可容纳16777214字节,LONGTEXT最多可容纳4294967294字节。更多信息可以在这里找到:http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html – 2012-02-20 13:49:28