1

我有一个存储在 mySQL 数据库中的 CSS 文本。

它存储到ibf_css表,css_text列。css_text排序规则是latin1_swedish_ci.

这是我使用的 Web 应用程序的工作方式。CSS 存储在数据库中并与 css.php 一起加载。这不是通常的 style.css 像 Wordpress。

我的 CSS 中有这个

#userlinks > span:before { content:"\005B";margin-right:4px; }

每次我将它保存到数据库中(通过 Web 应用程序),它都变成了这个

#userlinks > span:before { content:"�05B";margin-right:4px; }

这发生在每行有\0. 像\005D,\00D0等。它变成了�05D,�0D0等。

如果我用 phpmyadmin 进行编辑,那很好。但是,如果我使用 Web 应用程序进行编辑,那就麻烦了。

请帮忙?非常感激。

4

1 回答 1

4

INSERT INTO foo ('bar') VALUES ('\0')表示您要插入一个NUL 字节。再次查询时,您将得到一个实际的0x00字节而不是\0. 您需要SQL 转义您插入数据库的任何数据。不仅适用于这种情况,而且总是如此。

请阅读伟大的逃避现实(或:使用文本中的文本需要知道的内容)

于 2012-11-01T06:44:12.143 回答