php写入mysql中文乱码的实例解决方法

yipeiwu_com6年前Mysql基础

php写入mysql出现中文乱码的解决办法是:在建立数据库连接之后,将该连接的编码方式改为中文。

代码如下:

$linkID=@mysql_connect("localhost","root","admin");

if(!$linkID)

{

  echo "数据库连接失败!";

}

echo "数据库连接成功!";

mysql_query("SET character_set_connection = GBK",$linkID);//将连接改为中文编码方式。这种方式 

仅能保证插入能正常执行,但是插入之后的数据时???乱码。有待继续解决。

继续上面的问题,查看一下Apache目录下的PHP源文件,发现页面的编码方式是ANSI的,于是乎,我改成了utf8格式的。然后在执行SQL语句命令前加上如下代码:

mysql_query("set names utf8");

这句话的意思是:使php写入mysql的编码为utf-8

可以防止phpmyadmin中查看mysql的中文数据出现乱码!//很重要!!然后再次执行插入操作,中文就能正常插入数据库了,不再是???乱码形式了。

总结:通过PHP往Mysql数据库中写入中文的话,必须要保证,php源文件编码格式为utf8,mysql的连接要保持utf8格式,数据库表的编码格式为utf8,保证这三点一致,中文就能写入成功了!!

以上内容仅供参考!感谢大家的学习和对【宜配屋www.yipeiwu.com】的支持。

相关文章

php读取mysql乱码,用set names XXX解决的原理分享

先说MySQL的字符集问题。Windows下可通过修改my.ini内的 PHP代码 复制代码 代码如下: [mysql] default-character-set=utf8 //客户端...

mysql建立外键

建立外键的前提:本表的列必须与外键类型相同(外键必须是外表主键)。 外键作用: 使两张表形成关联,外键只能引用外表中的列的值! 指定主键关键字: f...

MySQL授权问题总结

我用localhost的root帐号不能连 最后请教DBA组新建用户搞定! 现弄些受权用户的资料 以备不时之需 授权表使用举例 grant用于给增加用户和创建权限,r...

Mac OS下配置PHP+MySql环境

Mac OS下配置PHP+MySql环境

由于最近需要布置mantis用来进行bug追踪,在此记录其过程。 由于PHP apache环境在Mac OS上是自带的,所以不需要另处下安装包,只需要简单配置一下即可。 首先打开终端输入...

PHP备份/还原MySQL数据库的代码

以下是代码: 一、备份数据库并下载到本地【db_backup.php】 复制代码 代码如下: <?php // 设置SQL文件保存文件名 $filename=date("Y-m-d...