做一个网页,中间要用到查询数据库。但是查询条件是  中文的,比如 *** WHERE p = '山东'我用dw8做,插入了一个记录集,测试的时候 输入中文 山东 (数据库中录入的是中文山东)检索不出任何数据,
但如果数据 SD (把数据库中的 中文山东 临时改成 SD )就可以检索出对应的数据,这是为什么呢?我加了mysql_query("SET NAMES GBK");不管用
把数据表存储机制从 innoDB换成MyISAM也不行
把表选择中的utf8换成gbk_chinese_ci也不行 我以前弄过一个,用中文可以的,但是这次怎么也不行,奇怪,麻烦大虾指点迷津!!

解决方案 »

  1.   

    数据库和PHP文件的字符集要统一
    数据库用UTF8的话,PHP文件也用UTF8.
    还有,如果你是在插入数据后,把数据库的默认字符集由UTF8改为GBK,那么数据库里存储的还是UTF8编码的“山东”,而不会自动转为GBK编码的“山东”
      

  2.   

    我重新建立的数据表  整理选的是 gb2312_chinese_ci然后录入几个数据,新建网页的时候,默认的是charset=gb2312,测试的时候还是不行?我看看了以前做的,数据库编码都是UTF8,网页编码是charset=gb2312,在记录集中点击测试提示错误,但是打开网页是测试可以运行的,可以正常显示检索出的记录。