在我的网站上,我想显示从数据库的代码行。当试图将css引入数据库时,我得到了一个语法错误,尽管这个语句在html中工作得非常好。当然,在将html插入数据库之前,我必须避开
< >
标签。我也必须在css中转义字符吗?
INSERT INTO table (foreignk,language,content)
VALUES
(1,'CSS','cssplaceholder');
在我的网站上,我想显示从数据库的代码行。当试图将css引入数据库时,我得到了一个语法错误,尽管这个语句在html中工作得非常好。当然,在将html插入数据库之前,我必须避开
< >
标签。我也必须在css中转义字符吗?
INSERT INTO table (foreignk,language,content)
VALUES
(1,'CSS','cssplaceholder');
1条答案
按热度按时间ql3eal8s1#
你不必转义你的html,你需要转义你的数据。这意味着任何和所有的价值观。记住要根据你要写的内容逃走。对于sql,这意味着转义适合您的sql方言(例如mysql),但是html、json和css是不同的。
这个
<
字符对于字符串中的mysql来说是没有意义的。别逃避。尽可能保持你的价值观“原始”。这样做的目的是只在它们显示的上下文中对它们进行转义,并在它们显示时进行转义,而不是在它们显示之前。如果用html转义数据,那么在非html上下文中使用它时必须取消转义,然后数据就会变得难看。这就是为什么你经常收到主题包含实际文本的电子邮件
&
这表明有人错得很厉害。如果您是以编程方式执行此操作,请查看使用带有占位符值的准备语句。