Home > Database > Mysql Tutorial > body text

mysql数据库乱码的解决方法

WBOY
Release: 2016-06-07 16:18:12
Original
1066 people have browsed it

做一个包含越南文的网站,用户说在保存包含越南文的文章时,MSYQL乱码了,看下面的解决方法 我自己测试一下,很多字符变成了 ?'。 数据库连接已经是使用了 utf8 字符集: 代码如下: define(MYSQL_ENCODE, UTF8); mysql_query('SET NAMES '.MYSQL_ENCODE,$con

 做一个包含越南文的网站,用户说在保存包含越南文的文章时,MSYQL乱码了,看下面的解决方法

 

我自己测试一下,很多字符变成了 ‘?'。

 

数据库连接已经是使用了 utf8 字符集:

 

 

代码如下:

define("MYSQL_ENCODE", "UTF8");

 

mysql_query('SET NAMES '.MYSQL_ENCODE,$conn) or die('字符集设置错误'.mysql_error());

 

 

 

搞了大半小时,没有搞定。

 

insert 的数据都是仍然乱码,突然想,是不是字段不能保存这些越南文。

 

我看一下数据库字符集,默认都是 gbk,这个对中文是没有问题的,,一碰到越南文,就乱码了。

 

于是,我将可能用到越南文的字段的字符集修改为  utf8,校对修改为:utf8_unicode_ci。(这里一定要具体修改某个字段,修改整个表的字符集,不起作用,字段还是保留着原来的字符集)问题解决。

 

我的数据库为:php_college_web

 

表:city_article

 

用到越南文的字段:title,content

 

于是执行如下sql:

 

 

代码如下:

ALTER TABLE city_article CHANGE title title VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci

 

ALTER TABLE city_article CHANGE content content text CHARACTER SET utf8 COLLATE utf8_unicode_ci

 

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template