关于PHP页面显示乱码问题的解决
关于PHP页面显示乱码问题的解决
网页乱码一直是网络编程高手都头痛的问题,我是一个PHP Web编程的初学者,学习当中也遇到了这个问题,查找了相关的资源,总结如下:
一般的中文编码:gb2312,gbk(前者的一种扩展),这两种编码缺乏国际通用性;UTF-8为国际标准编码,一般网页编码使用该编码方式;
出现乱码大部分是由于编码方式的不一致导致的,其中主要有四个地方不一致就可能存在这个可能:
1、页面文件的编码方式(.html,.php等)
2、 html.head中指定浏览器的编码方式
3、MySql数据库传输的编码方式
4、Apache字符集
这四个的编码一般需要统一起来,统一为UTF-8更为合适。以下四点应该注意:
1、PlusEdit这种编辑会识别文件编码,打开并保存后编码方式保持不变 ;而像visual studio 2005、Zend Studio等开发工具会以工具首选项中的字符集打开并保存,可能改变原来的编码方式,可能原来是utf-8的,zend studio ->工具(首选项编码为gb2312),打开并保存就变成了gb2312可能会出现乱码;
2、<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 这句话可以强制要求浏览器以utf-8编码方式来查看页面,但有一点需要注意,可能Apache的字符集为非UTF-8,例如GB2312,此时浏览器会优先以服务器(GB2312)的字符集编码打开,又可能导致乱码;所以一般可以这么处理:关闭服务器Apache的字符集AddDefaultCharset off 此时浏览会以页面Head中字符集打开;
3、PHP一般都与Mysql数据库交互,两者进行数据通信时,也有一个编码问题,不管增还是查,必须指定通信编码方式(一般与Head中编码方式UTF-8一致,否则取出来的数据是以非UTF-8编码的,到页面上显示仍旧为乱码;把UTF-8编码的字符通过非UTF-8的通信方式传输到数据库同样会失败,我遇到了这个Insert失败问题,希望大家不要重蹈覆辙,O(∩_∩)O~) 指定通信方式方法:mysql_query('set names utf8'),注意不是utf-8;
4、一般跟数据库建库时的编码没有关系,修改后sql语句执行会有问题,比如前台可视化工具操作删除数据时会报字符集不符合的错误(我用的工具为MySql-Front),也不需要修改my.ini文件中的编码方式,修改后可能导致Mysql无法启动,报1065错误 ;只要命令行执行mysql客户机程序时增与查没有出现乱码,数据库的编码方式应该是没有问题的,重点需要检查的是否是上面三个导致的乱码。
关于PHP页面显示乱码问题的解决的更多相关文章
- 如何解决JSP页面显示乱码问题
一.JSP页面显示乱码 下面的显示JSP页面(display.jsp)就出现乱码: <html> <head> <title>JSP的中文处理</title& ...
- Jmeter响应内容显示乱码问题的解决办法
Jmeter在访问接口的时候,响应内容如果有中文可能会显示乱码,原因应该是响应页面没有做编码处理,jmeter默认按照ISO-8859-1编码格式进行解析. 下面把解决步骤列一下: 现象:jmeter ...
- vscode打开文件,中文显示乱码(已解决)
之前使用vscode打开keil的文件后,发现显示乱码,网上查找资料发现大多是这种方法:将files.autoGuessEncoding改为true,但是并没有用. 发现第二种方法为:在vscode中 ...
- SpringMVC进行Ajax请求页面显示乱码
最近在项目的使用过程中发现在springmvc的项目中,使用返回页面的请求方式,数据都能正常显示,但是对于ajax的请求,始终显示乱码. 首先第一种是因为我们在web.xml中配置了spring的字符 ...
- jsp页面之间传中文参数显示乱码问题的解决
最近在项目中遇到jsp页面通过url传递参数,出现乱码,但是在本地是正常显示,在服务器上却是乱码,找了好久都没找到解决方法,最终在大神的帮助下解决了这个问题 比如从a.jsp像b.jsp页面传递参数 ...
- JSP页面显示乱码
下面的显示页面(display.jsp)就出现乱码: <html> <head> <title>JSP的中文处理</title> <meta ht ...
- JS文件中的中文在网页引用时显示乱码的简单解决方式
今天把一个jquery方法从前台cshtml文件转移到单独的js文件中后执行不成功,调试发现if判断中的中文字符串变成了乱码,之前在前台文件中是可以正常显示的,所以判定可能是跟文件的编码方式有关系. ...
- 详解Intellij IDEA中.properties文件中文显示乱码问题的解决
首先,你可能会见到如下提示: File encoding is disabled because .properties file (see Settings|Editor|File Encoding ...
- EasyUI 在aspx页面显示高度不正常解决办法
<body class="easyui-layout"> <form id="form1" runat="server"& ...
随机推荐
- 20145307陈俊达《信息安全系统设计基础》第5周学习总结PT1
20145307陈俊达<信息安全系统设计基础>第5周学习总结 教材学习内容总结 X86寻址方式经历三代: DOS时代的平坦模式,不安全,原因是没有区分用户空间和内核空间 8086的分段模式 ...
- Socket 是嘛玩意儿(简单聊聊)
网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. 建立网络通信连接至少要一对端口号(socket).socket本质是编程接口(API),对TCP/IP的封装 ...
- Oh My Zsh 插件篇 - 实用工具
Oh My Zsh 除了为我们提供快捷的命令行操作之外,还提供了强大丰富的插件机制,每个社区贡献者都可以贡献自己的插件,让整个生态体系更加丰富完善.今天给大家介绍了一下它的实用工具类插件. 前面我们分 ...
- [参考]C的scanf 和 C++的fscanf 的用法
说明:本文不适合新手学习,适合用来做参考.本文参考有其他博客的内容,不过年代久远已经忘记了,在此感谢各位博主! scanf函数 用 法:int scanf(char *format[,argument ...
- DataStage系列教程 (Slowly Changing Dimension)缓慢变化维
BI中维表的增量更新一般有2种: Type 1:覆盖更改.记录的列值发生变化,直接update成最新记录. Type 2:历史跟踪更改.记录值发生变化,将该记录置为失效,再insert一条新的记录. ...
- mathematical method
mathematical method 曲线拟合 指数 \(lnY = lna + bX\) 对数 \(Y = blnX + a\) 幂函数 \(lgY=lga+blgX\) 多元线性回归模型 回归分 ...
- spring boot 笔记--第三章
spring boot 笔记 第三章,使用Spring boot 构建系统: 强烈建议支持依赖管理的构建系统,Maven或Gradle 依赖管理: Spring Boot的每版本都会提供它支持的依赖列 ...
- Enter键禁止表单提交
Enter键禁止表单提交js代码: //禁用Enter键表单自动提交 document.onkeydown = function (event) { var target, code, tag; if ...
- 今天 学习用到的一些知识(properties 读取,js 删除元素)
1.properties文件位置的关系:当properties文件放在src目录下时,编译会自动把src里的文件放到bin文件平级,因此可用this.getClass.getClassLoader.g ...
- 拉取代码过程中遇到的:post install error,please remove node_modules before retry!
这是在git → clone 之后,安装npm intall时出现的错误,完整错误提示如下: 解决: // 1.先删除node_modules这个文件 $ rm -rf node_modules/ / ...