Php MySQL中文拼音编码问题
我有一个MySQL数据库设置为utf8。我的字符集/排序规则变量是: 变量名称值 字符集客户机utf8 字符集连接utf8 字符集数据库utf8 字符集文件系统二进制 字符集结果utf8 字符集服务器拉丁1 字符集系统utf8 排序规则| utf8(通用)ci 排序规则| utf8 |通用| ci 排序规则|服务器|拉丁语|瑞典语| ci 我有一个网页,显示我们MySQL数据库中的汉字和拼音。汉字显示良好,但拼音混乱。比如说, 显示:NÃnjÄng 正确:NánjīngPhp MySQL中文拼音编码问题,php,mysql,cjk,Php,Mysql,Cjk,我有一个MySQL数据库设置为utf8。我的字符集/排序规则变量是: 变量名称值 字符集客户机utf8 字符集连接utf8 字符集数据库utf8 字符集文件系统二进制 字符集结果utf8 字符集服务器拉丁1 字符集系统utf8 排序规则| utf8(通用)ci 排序规则| utf8 |通用| ci 排序规则|服务器|拉丁语|瑞典语| ci 我有一个网页,显示我们MySQL数据库中的汉字和拼音。汉字显示良好,但拼音混乱。比如说, 显示:NÃnjÄng 正确:Nánjīng 现在,我检查页面编码,并
现在,我检查页面编码,并将其设置为UTF8。我用PHP呼应了Nánjīng,它显示得很好。我在命令行中签出了数据,它在数据库中是正确的。然而,每当它通过一个查询时,它都会弄乱拼音,但不会弄乱汉字。有人知道为什么会发生这种事吗?我知道了。这是一个整理问题。我修改了cnf,将collation_server变量设置为utf8_general_ci,然后重新导入我的数据,它工作正常。。。我不知道为什么我之前没有想到这一点 如果您想在mysql数据库中存储拼音,您必须通过base64_encode()对其进行编码并且在显示时,您必须通过base64_decode()对其进行编码最重要的一点是,必须使用标题('Content-Type:text/html;charset=utf8-general-ci')位于页面顶部
有没有可能汉字是UTF-8,而拼音不是?您需要验证每个表的字符集。相关问题,@Steve-o感谢链接!这让我走上了正确的道路。我发布了我所做的修复工作。
NÃnjÄ«ng
是Mojibake;有关可能的原因,请参阅。