你的php网页乱码了吗

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

一、

学习php的童鞋在编写网页的时候,要是设计到中文内容的储存的时候,大多会出现一个问题就是乱码。一般乱码的话,我们可以检查三个方面

    (1)网页编码是否正确,比如是否在头部那里加入原标签

 

1
< meta  charset = "UTF-8" >

    (2)检查mysql数据库储存时默认使用的字符集

    (3)检查网页文件的编码,是否为对应的中文编码


------------------

环境:win7+wamp2.2

------------------

二、

下面我们就第二点开始,mysq数据库使用的编码字符集

(1)打开mysql终端,查看当前的设置,确定要修改的范围

1
show variables  like  'char%' ;

(2)根据结果进行分析,

1、如果你显示的结果和我的差不多,即(只有character_set_system编码为utf8)那么清跟随下面的脚步一步步来


wKiom1SUGPahG-8JAAEO0mQ_5j8071.jpg


2、打开my.ini文件,搜索关键词'mysqld',找到之后,观察是否有这一行

character_set_server = utf8

倘若没有的话,则应该像我这样在其下面添加一句

wKioL1SUGZuhB4eRAAAz_lFifO0441.jpg

3、再次搜索关键词'client',观察是否有这一行

default_character_set = utf8

没有的话在[client]下面添加上

wKiom1SUGPbC9pO0AAB29ywHy3g701.jpg

4、保存,重启mysql服务,关闭mysql终端(不然看到的客户端编码不会更新)

5、再次打开终端,我们再次输入

1
show variables  like  'char%' ;

倘若出现下面的结果,即mysql数据设置成功

wKioL1SUGZvzoP_FAAF_bI0qrXk834.jpg

三、

网页文件编码这个问题最容易被忽略,这个是在保存的时候,选择保存文件编码的格式时设置的。

解决办法:

1、使用notepad++打开该网页文件,然后在“格式”--“转为UTF-8无BOM编码格式”

wKiom1SUGPnhJ27NAAI6wLcIBJ8667.jpg

2、保存一下就好了


问题分析:

1、我在编写php的时候已经使用过

1
<span style= "font-size:18px;" ><?php mysql_query( 'set names utf8' ); ?><br></span>

但是还是出现乱码问题!


分析:使用上面语句,修改的只是三项,这三项分别为

character_set_client

character_set_connection

character_set_results

而且这种修改只是临时性的,关闭终端后又和原来一样

图片说明:

wKiom1SUGPmDFhUpAAJd07ezvvo725.jpg


2、我们对于第三个乱码问题进行分析一下

(1)使用sublime text3编辑打开php文件。可以看到左下角有编码的信息,可以看到,目前的编码为gb2312

wKiom1SUGxawUc_dAAAXFNr56Vk531.jpg

(2)当网页加载的时候,那时也就相当于打开一个文件,那时读取的格式时按照gb2312的编码来读取网页文件,而在用户浏览器显示时,因为网页声明了字符集为utf-8,所以会将得到文件按utf-8字符集来解释内容,这是就会出现乱码了,而我们那些从数据库读取出来的内容却没有问题

网页编码

wKiom1SUGPfCSu2SAAC1NZc-EBw694.jpg

原来的gbk编码的文件

wKioL1SUGZuwuHs4AACst5CUsbY965.jpg

后来utf-8编码的文件

wKioL1SUGZ2RWRhoAACe-vn47dk899.jpg

(3)注意一点,sublime text3 的转换编码的时候不太给你,虽然显示转换成功,可是呢?显示还是依旧,还是我们的notepad++给力一点,怎么修改前面有!转换成功之后

wKioL1SUGZ3CuWL9AAASZHFzBTs218.jpg


3、为什么我按照你所说的修改了,在mysql终端下显示,还是乱码呢?

分析:

(1)我们先来看看windows下的cmd的使用的字符集是什么?

wKioL1SUGZ7AQzA_AAC-YpUayIY537.jpg

可以看到,cmd的字符集是gbk,也就是说任何在终端显示的内容会以对应gbk这个字符集,但是我们数据库的中文设置的utf8这个字符集,当我们要显示时,自然会以utf8编码的读取数据库数据,那时编码为utf-8,一到终端就乱套了


(2)那该怎么查看呢?

使用phpmyadmin就好了打,当然得设置我们使用的utf-8编码!










本文转自 qq414207614 51CTO博客,原文链接:http://blog.51cto.com/skytina/1591864,如需转载请自行联系原作者
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
存储 PHP 开发者
深入浅出PHP:构建你的首个动态网页
【9月更文挑战第24天】在数字时代的今天,掌握编程技能不再是专业技术人员的专利。PHP作为一种流行的服务端脚本语言,因其易学性和灵活性而广受欢迎。本文将引导您从零开始,通过一个简单实例—创建个人博客页面,逐步深入PHP的世界。我们将一起探索变量、循环和函数等基本概念,并最终将这些元素融合到实际的代码中。不论你是编程新手还是希望扩展知识的开发者,这篇文章都将为你提供一次愉快的学习旅程。
43 0
|
16天前
|
自然语言处理 关系型数据库 MySQL
PHP编程入门:构建你的第一个网页应用
【10月更文挑战第29天】本文旨在引导初学者步入PHP编程的世界,通过深入浅出的方式介绍PHP的基础知识,并指导读者如何动手实践,搭建一个简单的网页应用。文章不仅涉及PHP代码的编写,还包括了环境配置、项目结构设计以及前后端交互的基本概念。适合对Web开发感兴趣且希望快速入门的朋友阅读。
28 0
|
2月前
|
存储 关系型数据库 PHP
深入浅出PHP:构建动态网页的基石
在数字时代的浪潮中,PHP作为一门强大的服务器端脚本语言,为无数网站的建设和开发提供了动力。本文将通过浅显易懂的方式,引导初学者理解PHP的核心概念,掌握基础语法,并介绍如何利用PHP进行数据库交互和处理表单数据,最终实现一个简单动态网页的搭建。无论你是编程新手还是希望扩展技能的开发者,这篇文章都将为你开启PHP世界的大门。
|
3月前
|
编译器 PHP 开发者
PHP 7新特性深度解析与实践深入浅出PHP:构建你的第一个动态网页
【8月更文挑战第27天】本文将深入探讨PHP 7的新特性,包括性能提升、语法改进等,并通过代码示例展示如何在实际项目中应用这些新特性。同时,我们还将讨论如何优化现有项目以充分利用PHP 7的优势。让我们一起探索PHP 7的世界,提升开发效率和项目质量!
|
3月前
|
搜索推荐 关系型数据库 MySQL
PHP编程入门与实战:构建你的第一个动态网页
【8月更文挑战第24天】本文将引导初学者进入PHP编程的世界,从基础概念到实践操作,一步步展示如何使用PHP创建一个简单的动态网页。文章不仅介绍PHP的安装、语法和常用功能,还通过一个实际案例演示如何应用这些知识。无论你是编程新手还是希望扩展技能的开发者,这篇文章都将为你打开一扇通往Web开发的大门。
|
3月前
|
存储 缓存 自然语言处理
|
3月前
|
数据采集 JavaScript 数据挖掘
如何使用 PHP Simple HTML DOM Parser 轻松获取网页中的特定数据
本文介绍了使用PHP Simple HTML DOM Parser进行网页数据抓取的方法,尤其适用于从懂车帝二手车网站提取汽车品牌、价格和里程等关键信息。首先,安装并配置所需库,使用代理IP和设置cookie与useragent来模拟用户行为,避免被封。然后,通过编写PHP脚本,利用cURL获取网页内容,解析HTML并提取所需数据,最终将数据保存至CSV文件。文章强调了正确配置代理和用户代理的重要性,并提供了完整的PHP代码示例,以帮助读者理解和应用网页抓取技术。
如何使用 PHP Simple HTML DOM Parser 轻松获取网页中的特定数据
|
3月前
|
SQL 程序员 PHP
PHP网页下的注入原理
PHP网页下的注入原理
|
5月前
|
安全 搜索推荐 关系型数据库
PHP的魔法:探索动态网页生成
【6月更文挑战第8天】在数字化时代的浪潮中,PHP以其独特的魅力和强大的功能,如同一位魔法师,引领着动态网页生成的艺术。本文将带你走进PHP的世界,探索其背后的魔法,揭示如何利用PHP创建动态、交互式的网页,以及它如何成为现代Web开发不可或缺的一部分。
|
6月前
|
监控 前端开发 安全
PHP脚本:实现实时监控电脑屏幕并生成网页截图
在当今数字化时代,实时监控和数据收集变得越来越重要。有时候,我们需要监视某些活动,例如员工的工作情况、儿童的网络活动等等。在这篇文章中,我们将探讨如何使用PHP脚本实现实时监控电脑屏幕,并将监控到的数据自动提交到网站。
243 2