我有一个CSS文本存储在mySQL数据库中。
它存储在ibf_css
表格,css_text
列中。 css_text
排序规则为latin1_swedish_ci
。
这就是我正在使用的Web应用程序的工作方式。 CSS存储在数据库中并使用css.php加载。它不像Wordpress那样通常的style.css。
我的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应用程序进行编辑,则会遇到麻烦。
请帮忙吗?非常感谢。
答案 0 :(得分:4)
INSERT INTO foo ('bar') VALUES ('\0')
表示您要插入 NUL字节。再次查询时,您将获得实际的0x00
字节,而不是\0
。您需要 SQL转义您插入数据库的任何数据。不仅仅是这样的情况,而是总是。
请阅读The Great Escapism (Or: What You Need To Know To Work With Text Within Text)。