最近被数据库乱码搞爆了,来记录一下,网上很多方法就不说,其实就要做到编码一致就行了。我用的UTF-8编码,这里有几个地方要注意:
1.数据库编码选择UTF8,这里是指新建数据库的时候,开始用navicat现在不用了,用phpmyadmin,这个创建的时候是有选择的。
2.创建表的时候,编码方式也选择ut8
3. 字段也选择utf8
4.在数据库连接之后加一句:
$con = $mysql_connect($host,$user,$pw);
mysql_set_charset('utf8', $con); //设置当前连接的默认字符集
5.页面通过表单提交写入数据库的时候,要注意html的页面编码也是utf8,有时候浏览器会自动转化编码方式,造成写入的数据不是utf8编码,所以写入数据库就是乱码了。
为什么要加4里边的语句,也没搞明白,因为在加入之前已经把mysql服务器里边的字符集全都设置成utf8了。用php函数获取mysql端的默认字符集结果还是显示拉丁,所以尝试加入这句就解决了。