y 中文乱码-PHP环语言对MySQL数据库进行中文字段的数据插入和查询时候遇到的乱码问题

问题描述

PHP环语言对MySQL数据库进行中文字段的数据插入和查询时候遇到的乱码问题

#定义插入数据库的时候定义插入的字符串的编码为
mysql_query('SET NAMES UTF8');

这时候通过PhpMyadmin能够正常看到插入的正文字段信息,但是通过
mysql_query("select * from $table_name limit $offset,$rows");

查询该字段的时候,显示的字段信息是乱码

如果不对插入数据库的编码做任何的定义,直接插入数据库中文字段的时候,在PhpMyadmin当中看到的中文字段都是符号码,但是在PHP当中通过mysql_query语句查询时候显示的字段信息是正常的中文.

请问这是什么原因?

解决方案

先检查一下字段的连接校对是什么?
如果插入前用了 mysql_query('SET NAMES UTF8');
那么读出前鸭要用 mysql_query('SET NAMES UTF8');

如果插入时没有指定编码,读出时却没有问题。这表示你插入的是 gbk 编码的内容,而指端的连接校对是 latin1

解决方案二:

PHP+MYSQL 出现乱码的解决方法
http://www.cnblogs.com/pifoo/archive/2011/05/21/mySql.html

时间: 2025-01-02 13:07:49

y 中文乱码-PHP环语言对MySQL数据库进行中文字段的数据插入和查询时候遇到的乱码问题的相关文章

mysql-我的MYSQL数据库总是中文乱码

问题描述 我的MYSQL数据库总是中文乱码 _我的MYSQL数据库总是中文乱码,我已经把编码调为utf8了 解决方案 你安装MySQL的时候是不是选择的utf-8哟 解决方案二: 是程序写入乱码?请问数据的来源~ 解决方案三: 如果是表内存储字段内容乱码,那就是输入的代码编码与数据库中的编码不一致:如果是读取数据库时显示乱码,那就设定输出的编码. 解决方案四: 应该是程序和数据库直接操作引起的,比如JDBC连接时设置为utf-8试试 解决方案五: 我也遇到过你这种问题,试了N种方法都不行,最后没

hibernate-关于mysql数据库出现中文乱码的问题

问题描述 关于mysql数据库出现中文乱码的问题 项目全程都是utf8,hibernte写进数据库的数据取出来在myeclipse的consle下面显示是正常的,为何在数据库下面显示的中文名就是乱码.注明:我的数据库所有配置都是utf8 然后我又试着手动在dos窗口下用insert语句插入中文,结果是error1406,插不进去,查看用程序插进去的中文显示乱码.我把my.ini文件中的两处配置改为GBK,然后dos窗口下显示出了正确的中文,我想问的是既然数据库是utf8编码,为何GBK可以把中文

C语言对mysql数据库的操作

原文:C语言对mysql数据库的操作这已经是一相当老的话题.不过今天我才首次使用,把今天的一些体会写下来,也许能给一些新手带来一定的帮助,更重要的是供自己今后忘记的怎么使用而进行查阅的! 我们言归正传 1.头文件:        #include <stdio.h>        #include <stdlib.h>        #include <mysql/mysql.h> //这个是必需要包含的,下面对mysql的所有操作函数,都出自这里 2.定义一个MYSQ

用C语言操作MySQL数据库的通用方法_Mysql

在我们的web应用中,虽然PHP.JSP等脚本均提供了MySQL的接口,但是显然直接使用C语言具有更好的安全性和性能,在这篇文章中能够有所体现. 先看结构体: 以下代码块是用来连接数据库的通讯过程,要连接MYSQL,必须建立MYSQL实例,通过mysql_init初始化方能开始进行连接. typedef struct st_mysql { NET net; /* Communication parameters */ gptr connector_fd; /* ConnectorFd for S

将mysql数据库表中的部分数据导入到oracle数据库中

问题描述 将mysql数据库表中的部分数据导入到oracle数据库中 有一个问题:需要将Mysql数据库表中的某些数据导入oracle数据库的表中,需要通过传递文件来实现.比如将mysql数据生成.sql文件,然后执行该文件就可以写入到oracle数据库中.希望各位高手给个思路,谢谢 解决方案 可以用sql命令把数据导出到文件,e然后再把文件导入数据库 解决方案二: 你自己思路不是已经很清晰了吗? or你的意思是需要定时自动导入? 自动导入的话 估计需要借助写个程序实现了 解决方案三: 你自己思

spark从mysql数据库读取1000万条数据 运行速度很慢 如何优化

问题描述 spark从mysql数据库读取1000万条数据 运行速度很慢 如何优化 使用dataframe从mysql数据库中读取一张有1000万条记录的表 读取数据非常的慢 有什么办法能优化呢 求助啊 级 解决方案 http://book.51cto.com/art/201409/453045.htm 解决方案二: MySQL数据库运行状态数据的采集----------------------

mysql-使用Entity Framework链接Mysql数据库所有浮点型字段无法显示问题

问题描述 使用Entity Framework链接Mysql数据库所有浮点型字段无法显示问题 如题,不知道为何只要是Mysql中使用了浮点型字段,在EF在项目中都无法生成实体字段,不知各位大神有没有遇到过的或是解决方案,十分感谢. 解决方案 看看是不是映射的问题,两边不对应.换成decmal看看

我的乱码之路——JSP与MySQL交互的中文乱码解决方案及总结

js|mysql|交互|解决|中文|中文乱码      首先实现了一个StringConvert bean(GBtoISO()和ISOtoGB()两个方法),解决了与MySQL数据库交互的时候的部分中文乱码问题:在JSP程序中读取MySQL的中文内容,用这两个方法可以解决乱码问题.     但是从JSP写入到MySQL的中文内容都成了乱码,并且再读出来的时候也显示为"??",在这里应该出现了编码转换过程中的字符信息丢失.郁闷的是,我在命令行窗口中登陆到MySQL后,执行如"I

从MySQL数据库表中取出随机数据的代码_php技巧

MySQL 如何从表中取出随机数据  以前在群里讨论过这个问题,比较的有意思.mysql的语法真好玩. 他们原来都想用PHP的实现随机,但取出多条好像要进行两次以上查询. 翻了手册,找到了下面这个语句,可以完成任务了 SELECT * FROM table_name ORDER BY rand() LIMIT 5; rand在手册里是这么说的: RAND()  RAND(N)  返回在范围0到1.0内的随机浮点值.如果一个整数参数N被指定,它被用作种子值.  mysql> select RAND