当我回复一些土耳其人物时,如:
echo "ÇŞİĞÖÜ, çşıüğö";
没有问题:
http://i.hizliresim.com/kj9kov.png
但是当我在JSON数组中编码这个字符串,并将编码的字符串放在mysql数据库中时,它显示如下:
{" otherComments":" u00c7u015eu0130u011eu00d6u00dc,u00e7u015fu0131u00fcu011fu00f6"}
当我不在JSON数组中编码时,它只显示"?"而不是土耳其字符 我的php文件中已有此代码:
header('Content-Type: text/html; charset=utf8');
我不知道还能做什么。
这是我的dbconnect文件中的代码:
mysql_query("SET NAMES 'utf8'", $this->con);
mysql_query("SET CHARACTER SET utf8", $this->con);
mysql_query("SET COLLATION_COLLECTION='utf8_turkish_ci'", $this->con);
mysql_select_db("mehmeta3_team6", $this->con);
所选架构的设置:
http://i.hizliresim.com/gkrAZN.png
表格和列的设置:
http://i.hizliresim.com/YvQlrE.png
答案 0 :(得分:1)
its not the db side problem
当你将它转换为json格式时回显那个字符串 你会看到它将它转换为某种不同的格式可能是那些特殊字符的ascii值。即使您解码该结果,它也会产生不同的结果而不是您编码的strin。 我认为尝试在没有编码的数据库中插入我的意思是简单的字符串,如ÇŞİĞÖÜ 可能会起作用