情况描述:verchar
字段插入INSERT
中文字符,显示出来变成一个个的问号,在phpmyadmin
下操作插入中文直接报错。
解决方法如下:
1. 检查字符集设置;
1.1. 涉及到的html代码的文件中须包含;
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
1.2. 涉及到php
数据库操作的需设置编码;
$mysqli->set_charset('utf8');
//$mysqli为mysqli对象
mysql_query("SET NAMES UTF8");
//单条语句,放在连接语句后面
1.3. 测试用的浏览器的编码设置为UTF-8
(chrome
中“设置——显示高级设置——自定义字体——编码”);
1.4. 修改已创建的数据库排序规则为utf8_general_ci
,这一步可以在phpmyadmin
下操作,需要将表以及字段的排列规则都改过来,通过结构选项卡查看排列规则;
1.5. 修改MySQL
的默认字符集;
打开MySQL
的my.ini
文件:
[client]
添加
default-character-set=utf8
[wampmysqld]
下添加
character_set_server=utf8
init_connect='SET NAMES utf8'
如果是5.5
版本的MySQL
可能还需要在[mysql]
下添加
default-character-set=utf8
1.6. 使用
SHOW VARIABLES LIKE'character%';
为确保万无一失,在php
中进行数据库操作时,请使用SET NAMES ‘utf8′
; 语句,在连接之后使用
$mysqli->query("set names 'utf8'");
wamp环境PHP插入MySQL汉字中文乱码问题
原文链接:https://beltxman.com/1394.html,若无特殊说明本站内容为 行星带 原创,未经同意禁止转载。
MARK