你的程序使用数据库了吗?我觉得图中的乱码可能是数据库造成的。
创新互联主要从事网站设计制作、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务临漳,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
因为你提供的信息比较少,我假定使用了mysql数据库。
首先确认你的程序使用什么编码,一般是UTF8或GBK。你可以借助一些代码编辑器来识别程序的编码,比如eclipse或notepad++。方法一般是设定编辑器的编码,直到中文不乱码为止。
然后查看数据库的编码。如果你使用phpmyadmin,查看数据表结构,“整理”一列表示字符编码(如gbk_chinese_ci)。如果编码不同,将数据库的编码设为和程序编码一致即可。
中文乱码问题经常会出现
1、数据库、数据表、字段 编码格式要保持一致
2、如果在doc界面录入数据,要保持当前编码格式与数据表编码格式一致
3、php读取数据显示,要保持文件的编码格式、html页面的编码格式同数据库一致,编码格式为utf-8或gb2312或gbk
4、php连接数据库之后mysql_query('set names gbk')
开发中要做到数据库,网页,服务器程序编码统一,设置一下编码格式即可。
MySQL数据库编码、html页面编码、PHP或html文件本身编码要全部一致。
1、MySQL数据库编码:
建立数据库时指定编码(如gbk_chinese_ci),建立数据表、建立字段、插入数据时不要指定编码,会自动继承数据库的编码。
数据库连接时,也有编码,可以在连接完数据库后,执行mysql_query(‘SET NAMES gbk’);//将gbk换成你的编码,如utf8。
2、html页面的编码,指的是这一行的设置:
meta http-equiv="Content-Type" content="text/html; charset=gbk" /
3、PHP或html文件本身的编码:
用editplus打开php文件或html文件,另存时,选择的编码,如果数据库和页面编码是gbk,则这儿的编码选择ansi;如果数据库和页面编码是utf-8,则这儿也选择utf-8。
4、Javascript或Flash中传递的数据是utf-8编码:
另外要注意的是,Javascript或Flash中传递的数据是utf-8编码,如果数据库和页面编码是gbk,要进行转码,然后写入数据库。
iconv('utf-8', 'gbk', $content);
5、在PHP程序中,可以加上一行,来指定PHP源程序的编码:
header('Content-type: text/html; charset=gbk');
文件编码需要做到三个编码一致,如果你做到以下三个编码一致就永远不会出现乱码了!!!!!
(1)数据库编码
数据库编码注意的是数据库表字段的编码和数据库客户端编码,比如表字段的编码是UTF-8,操作数据库PHP文件编码是GB2312, 怎样才不会出现乱码呢?这个时候就要用SET NAMES GB2312来设置数据库服务器的客户端的编码,这样数据库服务器就会自动将数据库中编码为UTF-8的数据自动转化为GB2312,在接收的PHP文件就保证收到的数据不会有乱码
(2)PHP文件编码
也就是你在保存文件时选择的文件编码,如果不是当前你想要的编码可以通过“另存为”改变编码
(3)HTML中meta http-equiv="content-type" content="text/html;charset=gb2312"/设置客户端浏览器显示数据的编码,其本质是设置HTTP中Content-Type报头的值,PHP中要做到这一点可以用 header("content-type:text/html;charset=gb2312")
做到上面各编码一致的编码一致,不会出现乱码的!!
第一种方法:在浏览器菜单栏中选择“查看”-编码-自动选择(或者utf8);
第二种,看看你写代码的软件中的编码类型选择了么 ,我用的是EditPlus,所以在右下角那个地方有一个utf8有时候出现你说的情况就是因为utf8变成了ANSI,双击它可以选择其他编码。希望可以帮到你