记录PHP post提交表单导入mysql中文乱码的问题
记录记录PHP post提交表单导入mysql中文乱码的问题
关于乱码,这是个糟糕的问题!涉及到很多地方
解决思路:程序所涉及的环境字符集不一致导致
mysql出现乱码一般是mysql数据库内部的字符集出现问题
为了防止出现一些后续的问题
在建库的时候就要设置默认字符集
CREATE DATABASE 库名 DEFAULT CHARSET=UTF8;
其他的一些操作
查看mysql各个地方的字符集设置情况
SHOW VARIABLES LIKE 'character%';
顺便记录一下mysql数据库 各个字符集的作用

character_set_client
解析客户端sql语句的字符集
character_set_connection
通常与character_set_client保持一致,当进入查询时,会将sql语句 由character_set_client转变为 character_set_connection字符集
character_set_database
新建数据库的默认字符集,通常建库的时候就指定一下默认的字符集
默认数据库的字符集决定了新建表的默认字符集
默认表的字符集又决定了字段的默认字符集
换句话说,如果我们建库指定了默认字符集,建表的时候就不用去指定默认字符集了
如果建表,建库都不指定默认字符集,默认就会用character_set_database初始的字符集去建表,
而通常情况下,初始的character_set_database字符集是西欧的字符集,对英文友好,对中文不友好!
character_set_filesystem
文件系统字符集编码,主要用于解析文件名称的字符串字面值(默认就好)
character_set_results
返回给客户端的查询结果或者错误提示的字符集
character_set_server
服务器端的默认编码字符集
character_set_system
mysqlsever储存元数据的编码字符集(默认就好)
character_set_dir
mysql字符集编码储存的文件夹
如果需要改动某个字符集,可以用以下类似的语句
SET character_set_server = utf8;
如果以上都改了,还是出现问题,那说明mysql内部的字符集是没有问题的,剩下的应该就是外部环境的字符集的问题

网上找了很久,发现可能是操作系统字符集的问题
打开cmd 输入 chcp 查看活动代码页

win10默认用的GBK字符集,修改字符集为 UTF-8

修改重启后,查看字符活动代码页

这时候再次POST提交表单,导入数据库中文就可以正常显示了!
记录PHP post提交表单导入mysql中文乱码的问题的更多相关文章
- 可遇不可求的Question之导入mysql中文乱码解决方法篇
可遇不可求的Question之导入mysql中文乱码解决方法篇 先 set names utf8;然后 source c:\1.sql ?
- mysql表单输入数据出现中文乱码解决方法
MySQL会出现中文乱码的原因在于1.server本身设定问题,一般来说是latin1 2.建库建表时没有制定编码格式. 解决方法: 1.建库的时候 CREATE DATABASE test CHAR ...
- 【The Most Important】浅谈JSP表单Post方式中文乱码问题
首先祝大家鸡年吉祥!在这里我要说下这两天里这个问题困扰着我,大过年的心情都被烦扰的不好了,所以我带着兴奋的心情来赶快完成这篇博客,解决大家的问题.我的问题是post方式传递表单数据,Tomcat服务器 ...
- 关于Asp.Net中避免用户连续多次点击按钮,重复提交表单的处理
Web页面中经常碰到这类问题,就是客户端多次点击一个按钮或者链接,导致程序出现不可预知的麻烦. 客户就是上帝,他们也不是有意要给你的系统造成破坏,这么做的原因很大一部分是因为网络慢,点击一个操作之后, ...
- A、B同时打开一个页面进行同一条数据库记录进行修改,A修改完成后提交表单,A修改的数据保存完成后;当B也修改完成后,提交数据进行数据修改。此时B修改的内容会覆盖A修改的内容,请问如何避免?
A.B同时打开一个页面进行数据中的一条数据进行修改,A修改完成后提交表单,数据修改保存完成后B开始页面也修改完成,开始提交进行修改.此时B修改的内容会覆盖A的内容,请问如何避免? 通过搜索和我个人总结 ...
- 前端提交表单两种验证方式记录 jq或h5 required属性
JQuery: <form id="form"> <input type="text" name="aaa"> &l ...
- 总结:JSP几种提交表单方法
问题描述: 最近进了一家“老公司”工作,说他老不是说他成立的早,是因为他的编程框架太l.......low了.EJB的规范模式,使用是IBM经过Eclipse二次开发出来的RAD(Rational A ...
- 解析:使用easyui的form提交表单,在IE下出现类似附件下载时提示是否保存的现象
之前开发时遇到的一个问题,使用easyui的form提交表单,在Chrome下时没问题的,但是在IE下出现类似附件下载时提示是否保存的现象. 这里记录一下如何解决的.其实这个现象不光是easyui的f ...
- 无法在提交表单前通过ajax验证解决办法
博主在一个小项目中,要实现注册表单无刷新验证用户名或密码,但是发现不管怎么样都无法在先通过ajax验证之前不提交表单. 例如:一个简单的验证函数 function check(){ $.post(&q ...
随机推荐
- CodeForces - 1209D 并查集
题意: 有 n个不同的糖果,从 1到 n编号.有 k个客人.要用糖果招待客人.对于每个客人,这些糖果中恰有两个是其最爱.第 i个客人最爱的糖果编号是 xi和 y.将 k 个客人任意排列,他们按顺序去拿 ...
- 四、Jmeter 集合点(实际场景应用)
一.jmeter集合点的作用域及作用范围 先明确一些概念:1)定时器是在每个sampler(采样器)之前执行的,而不是之后: 是的,你没有看错,不管这个定时器的位置放在sampler之后,还是之下,它 ...
- Leetcode(3)-无重复字符的最长子串
给定一个字符串,找出不含有重复字符的最长子串的长度. 示例: 给定 "abcabcbb" ,没有重复字符的最长子串是 "abc" ,那么长度就是3. 给定 &q ...
- vagrant + virtualbox安装centos环境+docker安装
1. 下载vagrant 并安装,安装完成后,输入vagrant回车查看是否安装成功 2. 下载virtualbox.box并安装,安装完成后. 3. 创建虚拟机文件夹,例如.F:/vmimg/fir ...
- MDK5生成BIn文件的方法
配置MDK5 生成bin文件的 第一步:方法打开option for Target 第二步:选择 user 第三步:找到After Build/Rebuild 第四步:勾选run,点击文件选择小图标选 ...
- postion:fixed和margin:0 auto的使用
很多同学将顶部菜单固定,使用postion:fixed,然后使用margin:0 auto进行居中,发现margin:0 auto并不起作用. 通常,我们要让某元素居中,会这样做: #element{ ...
- npm publish bug & solution
npm publish bug & solution npm ERR! Unexpected token < in JSON at position 0 while parsing ne ...
- WebGL Programming Guide All In One
WebGL Programming Guide All In One WebGL WebGL Programming Guide All In One Publication date: July 2 ...
- Interview of Chinese IT companies Ratings and Reviews website/app
Interview of Chinese IT companies Ratings and Reviews website/app // js hack const getShitRank = (st ...
- taro & querySelector & refs
taro & querySelector & refs delayQuerySelector https://github.com/NervJS/taro-ui/blob/dev/sr ...