php数据库遍历出来乱码 php遍历结果集

thinkphp volist遍历oracle数据库时中文出现乱码

在php.ini配置文件中设置character为utf8(大于或等于us7ascii就行),把DB_CHARSET设置为‘US7ASCII’,在重启php试试。

从策划到设计制作,每一步都追求做到细腻,制作可持续发展的企业网站。为客户提供网站建设、成都网站设计、网站策划、网页设计、域名与空间、网页空间、网络营销、VI设计、 网站改版、漏洞修补等服务。为客户提供更好的一站式互联网解决方案,以客户的口碑塑造优易品牌,携手广大客户,共同发展进步。

PHP读取Access数据库 出乱码

access的中文版默认是GBK格式的,是无法改变字符类型的,所以用php读取的时候会乱码。

解决方法是:使用iconv转换

一、使用 iconv函数制作一个转码的自定义从GBK转到UTF-8的函数,如以下代码:

function enc($c){return iconv('gbk','utf-8',$c);}

二、为了写入数据库的编码是符合数据库需要的,所以我们还要制作一个从UTF-8转向GBK的函数:

function dec($c){return iconv('utf-8','gb2312',$c);}

制作好了转码函数,接下就是正常使用了。在从数据库里面调数据显示在页面的时候使用enc()函数,从页面提交数据到数据库时使用dec()函数,这样就可以很好的解决PHP使用UTF-8编码,ACCESS使用系统默认编码的问题了。

用PHP从数据库中取出的中文是乱码,怎么处理能使中文正常显示?

数据库采用UTF8编码,而页面申明编码是GB2312,这是最常见的产生乱码的原因。这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:mysql_query("SET NAMES GBK");或mysql_query("SET NAMES GB2312");来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。如果页面是UTF-8编码的话,可以用:mysql_query("SET NAMES UTF8"); 注意是UTF8而不是一般用的UTF-8。假如页面申明的编码与数据库内部编码一致可以不设定连接编码。

事实上MYSQL配置文件my.ini中定义了2个默认编码,分别是[client]里的default-character-set和[mysqld]里的default-character-set来分别设定默认时候客户端连接和数据库内部所采用的编码。上面指定的编码其实是MYSQL客户端连接服务器时候的命令行参数character_set_client,来告诉MYSQL服务器接受到的客户端数据是什么编码的,而不是采用默认编码。

转自:

php如何解决查询出来的数据是乱码问题

乱码一直是困扰PHP初学者的一个非常大的问题,现在总结下造成乱码的原因及解决方法:

一、HTML页面编码:meta http-equiv=content-type content=text/html; charset=utf-8 这里的编码要和数据库编码,及连接数据库编码;

二、文件在存储编码:比如文件inde.php,改变其存储编码为所需编码。只需用EditPlus等文本编辑软件 文件另存为,在编码中选择正确的编码(这点很多人都会忽略);

三、数据库编码:比如用的是phpmyadmin 选择数据库后,选择操作选项。下面有一个整理,这里面也要设置成统一的编码;

四、表编码:操作和第三点类似。这里就不重复了;

五、字段编码:在建表的建字段的时候,有个整理。如果内容有汉字,就一定要改成统一的编码;

六、连接数据库时mysql_select_db()后面,要加一句 mysql_query( set names utf8 );

七、 (刚遇到的)本地测试成功后的网站,传到网上去,会有乱码。可能会是在本地导出数据时没有选择正确的编码,所以才会在导入到web上后有乱码问题。

php遍历到的文件是中文文件名 显示为乱码 该如何解决

window是用的GB2312的编码,你的php文件应该用的是UTF-8,所以正如你写的那样,先要转换编码$dir=iconv("utf-8","gb2312",$dir);

但你别忘了,你用的是UTF-8的编码,所以你第六行写错了,把GB2312转换为UTF-8搞倒了吧

?php

function refresh($dir){

$dir=iconv("utf-8","gb2312",$dir);

if ($headle=opendir($dir)){

while ($file=readdir($headle)){

$file=iconv("gb2312","utf-8",$file); 

if ($file!='.'  $file!='..'){

echo "文件".$file."在文件夹".$dir."下br /";

}

}

closedir($headle);

}

}

refresh("D:/AppServ/www/test");

?

thinkphp 链接oracle数据库后,遍历出来的中文是乱码

ThinkPHP 在配置文件中配置

//数据库配置信息中的

'DB_CHARSET'= 'utf8', // 字符集

修改你的oracle字符集

如果 数据库配置信息中的没有DB_CHARSET的话 你加上即可

望采纳 Thx


文章名称:php数据库遍历出来乱码 php遍历结果集
URL链接:http://pwwzsj.com/article/dosdhoh.html