我的原始文字为1 1/2"w x 1/2"h
,但在数据库中,它看起来像1 1/2â€w x 1/2â€h
。
我正在使用stripslashes()。
但我仍然无法转换加密的字符串。
谢谢大家
我刚刚添加到html。
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
答案 0 :(得分:3)
我不知道你在哪里阅读,你必须使用stripslashes()
来逃避数据库输入或输出,但这些信息是错误的。您始终必须使用数据库库提供的特定转义机制。例如,如果您使用PDO,则可以使用bindValue()将值注入SQL代码。
关于1 1/2â€w x 1/2â€h
,看起来像一个多字节的UTF-8字符串被误解为某些单字节编码(可能是ISO-8859-1)。看起来您要么尝试将UTF-8数据放入Latin1数据库,要么在连接到数据库时提供错误的字符集。在第一种情况下,最好的解决方案是更改数据库字符集以匹配应用程序的字符集(如果您的DBMS允许这样做)。在第二种情况下,您可能会在PHP manual page for whatever your DB library is中找到解决方案:寻找一些方法来指定连接的字符集或编码。
答案 1 :(得分:0)
在您的数据库,表格和列上尝试UTF-8排序规则(utf8_general_ci)。