在mysql数据库插入中文数据的时候大部分中文都能正常插入进去,但是还是有极个别的中文无法插入,有时候是乱码,有时候什么也不出,例如插入"刘芃延",数据库里只插进去了“刘”,后两个字都没有插进去,请问这个是什么原因???
下面是连接数据库代码:
<?php
$db=mysql_connect("localhost","root","");
mysql_select_db("xiaoshi",$db);
mysql_query("set names 'gbk'");//这就是指定数据库字符集,一般放在连接数据库后面就系了
if(!$db)
{
mysql_close($db);
die("链接数据库失败".mysql_error());
}
?>

解决方案 »

  1.   

    用utf8吧。。保持编码一致就不会乱码什么的
      

  2.   

    你的数据库是 gb2312 的,当然放不进 gbk 的 芃 内码 c64d
      

  3.   

    我换成utf8结果所有中文都乱码了????该怎么改呢???
      

  4.   

    你数据库使用的是什么字符集啊你上面连接后是用gbk的
    mysql_query("set names 'gbk'")
    数据库要一个编码。
    set names 一个编码。
    页面一个编码。
      

  5.   

    你数据库的编码是gb2312 还是gbk 的?
    如果是gb2312换成gbk的,因为gb2312里有一些汉字是解不了的,一般就用gbk吧
      

  6.   

    我改成gbk可以了,但是utf8的怎么不行呢?????
      

  7.   

    你源数据是gbk编码的。。所以改成utf8就会乱码。
      

  8.   

    数据库编码要与的你的页面编码一致 都用utf-8就行