php数据库显示乱码~~~怎么办~~~

php数据库显示乱码~~~怎么办~~~,第1张

这个可能是你在安装环境的时候出现了问题,在安装mysql的时候,数据库默认的不是gb2312,是西欧字符,建议你重新安装数据库,或是使用wampsever集成安装环境,默认数据库是utf8的,只要你建的数据库整理为utf8

网页文件也保存为utf8的

(不要bom头的那种)以后写php就很少出现问题啦。要是在php文件的最上面一行再加上这么一句代码,<php

header("Content-Type:text/html;

charset=utf-8");>,那出现问题的几率就更小了。

这几天我已经回答了不只一个这样的问题了。我再来教你一次。

mysql乱码和程序的编码、数据库的编码都有关系。如果两者编码不一致,那么一定会导致乱码。所以不是一句set names utf8就能解决一切问题。

default-character-set只是一个默认值,和真正的数据库编码没有关系。

在新建数据库表,或者修改表结构时,你会看到一个叫做“整理”的选项。如果你的程序是UTF-8的,请选择utf8_general_ci。同样的道理,在新建、修改一个字段时,可以单独给它指定编码。

如果数据库和程序编码不一致,但不方便修改数据库编码,这时就需要“转码”。这时可以使用mb_convert_encoding函数。具体的用法参见PHP手册。

其实,只要注意文件编写的时候编码、数据库的编码一般就不会有这个问题的,但是,比如你用DW(dwcs4貌似没有这个现象)打开文件,它会以默认的编码读取,一旦你保存了,那就完了,用EditPlus打开之后,右下角有编码提示,如果发现不对,另存为,覆盖一下,就可以了

按以下步骤检查处理。

(1)HTML编码指定是否正确?检查<head>段中是否包含以下

<meta

>

试试把下面类似语句放到连接语句之后

mysql_query("SET NAMES UTF8");

或 PDO

$dbh->exe("SET NAMES UTF8");

用 SET NAMES UTF8 校正一下连接编码

因为PHP 连接数据库的过程中会经过三次编码转换,比如输出的的时候

MySql Server(UTF-8) -> PHP Connection( Latin1) -> UTF8页面的Result(UTF-8) 这时两种编码不兼容则产生乱码。

mysql数据乱码问题可能有以下三种原因:

1server本身设定问题,例如还停留在latin1版本;

2table的语系设定问题(包含character与collation);

3客户端程式(例如php,java)的连线语系设定问题;

建议使用utf8!!!!

想要避免mysql的中文乱码问题,可以尝试以下方法:

1,对于版本问题,建议去官网更新最新的版本或者比较好用的版本;

2,创建数据库,创建表时没有对字符编码进行设定会造成乱码问题:

创建数据库的时候:CREATE DATABASE `test`

CHARACTER SET 'utf8'

COLLATE 'utf8_general_ci';

建表的时候 CREATE TABLE `database_user` (

`ID` varchar(40) NOT NULL default '',

`UserID` varchar(40) NOT NULL default '',

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

3,对于第三种情况,参考一下方法:

编辑linux服务器中/etc/mycnf文件,在[mysql]段加入default_character_set=utf8;

如果只是调试遇到乱码问题:

在编写Connection URL时,加上useUnicode=true&characterEncoding=utf-8参数;

并且在网页代码中加上一个"set names utf8"或者"set names gbk"的指令,告诉MySQL连线内容都要使用utf-8或者gbk。

utf8或者gbk;

oracle没有character set name这个方法

直接在页面设置

<meta >

b用查询分析器进行数据管理,在中文数据前加N,强制转换编码,如:insert into test(name,address) values(N'技术',N'易网库')2改数据库的排列规则(collation) a执行下面sql语句改collation: alter database 数据库名称 collate Chinese_PRC_CI_AS b把所有字符字段都改成无符号类型,如:nchar,ntext,nvarchar 注意: 1对已经乱码的数据,没有效果 2这只针对MSSQL控制台中文乱码的问题,若是网站乱码,得进一步检查文件存储编码和显示编码的设置。 3执行下面的sql语句,可以查看当前数据库的排列规则:

以上就是关于php数据库显示乱码~~~怎么办~~~全部的内容,包括:php数据库显示乱码~~~怎么办~~~、MAC系统下MYSQL和PHP中文乱码的问题、PHP在显示数据库中的中文数据时显示乱码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10104334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存