13.7 数据显示乱码终极解决办法
php连接mysql乱码是开发中新手经常遇到的问题。 根据实际过程中大家所遇到的,将乱码的问题,总结成了9个要点来彻底解决链接mysql乱码的问题。
解决乱码问题的核心思想,就是:多个不同的文件系统中一定要统一编码。
这9个要点分别是:
html编码与MySQL编码一致
PHP编码与MySQL编码一致
若有header头发送字符集,请与数据库一样
- 要和页面的文字编码一致
数据库建库的字符集要统一
表的字符集要统一
列的字符集要统一(表设了,列的字符集就默认是表的)
连接,校验的字符集要统一
结果集的字符集要统一
一,文件编码
html和PHP文件的编码,示例中:拿notepad++来演示。将PHP和html都要设为这种字符集。
一定要设置为utf-8无BOM格式。
二、header头编码
如果php中有header头,一定要是utf-8的
header("content-type:text/html;charset=utf-8");
三、网页头文件编码
如果html文件编码是utf-8的也要设置为一致
四、创建数据库的编码
五、表和列创建的时候表为utf-8
六、连接,结果、校验字符集设置
通过mysqli_set_charset("utf8")来MySQL连接、结果和校验的字符集设置。
注:数据库的字符集声明和文件中的略有不同。utf8为mysql数据库的,utf-8为文件中使用的。