php提交数据后乱码 php写入数据库中文乱码

我PHP设置的是UTF-8,数据库设置的是UTF8-general-ci,从页面发送数据给数据库后数据库显示的是乱码是为啥

试试把下面类似语句放到连接语句之后

创新互联网站建设由有经验的网站设计师、开发人员和项目经理组成的专业建站团队,负责网站视觉设计、用户体验优化、交互设计和前端开发等方面的工作,以确保网站外观精美、成都网站建设、成都网站设计易于使用并且具有良好的响应性。

mysql_query("SET NAMES UTF8");

或 PDO

$dbh-exe("SET NAMES UTF8");

用 SET NAMES UTF8 校正一下连接编码

因为PHP 连接数据库的过程中会经过三次编码转换,比如输出的的时候

MySql Server(UTF-8) - PHP Connection( Latin1) - UTF8页面的Result(UTF-8) 这时两种编码不兼容则产生乱码。

求救!表单通过php提交数据到mysql中文乱码

1、页面代码里面要设置charset=utf-8

2、保存页面文件时要编码格式为utf-8

3、数据库有关的表、字段、的编码为utf8-general-ci

还不对的话,看下面。

我是这样解决的:

$dbh = new PDO('mysql:host=localhost;dbname=test','root','');

$dbh-exec("SET NAMES 'utf8';");

或者没用PDO

mysql_query("set names 'utf-8'");

php如何实现输出中文乱码?

1、在test.php文件内,使用header设置test.php执行的编码为utf8,避免输出中文的时候出现乱码。

2、在test.php文件内,创建一个测试的数组,例如,定义一个分类的数组,其对应的索引值分别为0,4,8。

3、在test.php文件内,使用array_values()方法将上一步的数据重新排序,并且从0开始,把重新排序的数组保存在$result变量中。

4、在test.php文件内,使用foreach方法遍历数组,其中$k为索引值,$v为索引值对应的数组值。

5、在test.php文件内,使用echo方法输出数组中的索引值和对应的数组值即可。


网页名称:php提交数据后乱码 php写入数据库中文乱码
浏览路径:http://csdahua.cn/article/dohecjs.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流