dw php网页中文乱码怎么办

藏色散人
Freigeben: 2023-03-17 15:20:02
Original
6647 Leute haben es durchsucht

dw php网页中文乱码的解决办法:1、将标题编码设置为UTF8;2、使用Dreamweaver新建php文件时,通过“ ”申明格式utf-8;3、通过“mysql_query("SET NAMES GBK");”来设定MYSQL连接编码。 ="utf-8">

dw php网页中文乱码怎么办

本教程操作环境:Windows7系统、dreamweaver8版、Dell G3电脑。

dw php网页中文乱码怎么办?

Dreamweaver运行php文件预览界面中文乱码解决方法

做网站开发需要处理多国不同的语言,经常遇到的是中英混排。在使用Dreamweaver新建、运行PHP代码时预览窗口中文有时会显示乱码,英文可正常显示。

dw php网页中文乱码怎么办
dw php网页中文乱码怎么办

出现这种情况的原因主要有:
1、文件编码:指的是页面文件(.html,.php等)本身是以何种编码来保存的。记事本和Dreamweaver 在打开页面时候会自动识别文件编码因而不太会出问题。而ZendStudio却不会自动识别编码,它只会以某种编码打开文件,如果工作时候一不注意,用错误编码打开文件,做了修改之后一保存,乱码就出现了。

解决的方法:页面设置,标题/编码,设置为UTF8

dw php网页中文乱码怎么办


2、页面申明编码:
HTML页面编码设置
在HTML代码HEAD里面,可以用 来告诉浏览器网页采用了什么编码,目前中文网站开发中XXX主要用的是GB2312和UTF-8 两种编码。使用Dreamweaver新建php文件时,需要申明格式utf-8:


dw php网页中文乱码怎么办

3、数据库连接编码:指的是进行数据库操作时候以哪种编码与数据库传输数据,这里需要注意的是不要与数据库本身的编码混淆,比如MySQL内部默认是latin1编码,也就是说Mysql是以latin1编码来存储数据,以其他编码传输给Mysql的数据会被转换成latin1编码。

知道了WEB开发中哪些地方涉及到了编码,也就知道了乱码产生的原因:上述3项编码设置不一致,由于各种编码绝大部分是兼容ASCII的,所以英文符号不会出现乱码,而中文就出现了乱码。

常见错误情况与解决方法:

1、数据库采用UTF8 编码,而页面申明编码是GB2312 ,这是最常见的产生乱码的原因。

这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用: mysql_query("SET NAMES GBK"); 来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展 )。如果页面是UTF-8 编码的话,可以用: mysql_query("SET NAMES UTF8");
PHP编码设置
在php代码时最前面即第一句写:

Nach dem Login kopieren

修改php.ini文件

修改“/etc/php5/apache2/php.ini”将

default_charset = "iso-8859-1"
Nach dem Login kopieren

修改为default_charset = "utf-8"

Mysql编码设置

Nach dem Login kopieren

注意是UTF8而不是一般用的UTF-8。假如页面申明的编码与数据库内部编码一致可以不设定连接编码。

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

在前面的基础上,还要在你的数据查询/修改/增加之前加入数据库编码。

2、页面申明编码与文件本身编码不一致,这种情况很少发生,因为如果编码不一致美工做页面时候在浏览器看到的就是乱码了。更多时候是发布以后修改一些小BUG,以错误编码打开页面然后保存导致的。或者是用某些FTP软件直接在线修改文件,比如CuteFTP,由于软件编码配置错误而导致转换错了编码。

3、租用虚拟主机的时候,上述3项编码都设置正确了有时还是有乱码。比方说网页是GB2312 编码的,IE等浏览器打开却总是识别成UTF-8 ,网页HEAD里面已经申明是GB2312 了,手动修改浏览器编码为GB2312 后页面显示正常。产生原因是服务器Apache设定了服务器全局的默认编码,在httpd.conf里面加了AddDefaultCharset UTF-8 。这时候服务器会首先发送HTTP头给浏览器,其优先级比页面里申明编码高,自然浏览器就识别错了。解决办法有2个,请管理员在配置文件自己的虚机里加上一条AddDefaultCharset GB2312 来覆盖全局配置,或者在自己目录的.htaccess里配置。

总结: 要解决PHP中文乱码,最快的解决办法就是,页面申明的编码与数据库内部编码一致,如果页面申请的页码与数据库内部编码不一致时,就设定连接编码 ,mysql_query("SET NAMES XXX "); XXX为连接编码。如mysql_query('SET NAMES UTF8');[2]

最后,中文成功显示:

    中文 

中文

Nach dem Login kopieren

dw php网页中文乱码怎么办

推荐学习:《PHP视频教程

Das obige ist der detaillierte Inhalt vondw php网页中文乱码怎么办. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!