mysql - 将有趣的方形字符插入表格时添加到值中

时间:2010-05-13 19:19:45

标签: mysql mojibake

我有一个php脚本,可以将值插入mySQL表

INSERT INTO stories (title) VALUES('$_REQUEST[title]);

我在进入表格之前检查了我的请求变量的值,这很好。

但是当我将title = john添加到表中时,

我得到这样的东西: title = "[][][][]john" 当我提取值时,它是一个新行,然后约翰。

我的列设置为utf-8,我也尝试过瑞典字符集。

注意:从phpMyAdmin命令行

插入值时,我不会收到此错误

3 个答案:

答案 0 :(得分:0)

每次连接数据库时都必须执行

SET NAMES <encoding>查询 很简单的规则。

其中<encoding>是您在mysql方言中的HTML页面编码(utf8为utf-8)

答案 1 :(得分:0)

{}中使用时,您需要""围绕任何数组表示法。

$q="INSERT INTO stories(title) VALUES('{$_REQUEST['title']}')";
顺便说一下,在检查你的$ _REQUEST变量以将已清理的版本存储在新变量中时,会更好,并确保使用real_escape_string()

来转义它们

答案 2 :(得分:0)

您需要检查数据库,服务器和客户端的字符集。

请注意,它不是瑞典语字符集,而是瑞典语校对。