各位web高手,现在碰到个非常棘手的问题。
我在Windows下面,配了Resin的服务器,制作PHP的应用。在读取mysql的中文记录的时候的出现乱码。
Resin的默认编码,mysql的编码,网页编码都是UTF-8了,并且在resin-web.xml中也添加了,useUnicode="true"和characterEncoding="utf-8"两句话。PHP代码中也设置了SET NAMES 'UTF8'。网页上的中文显示都是正确的,只有读取数据库中的中文字符时,显示???。
之前是用Apache+php的,没有任何问题,换成Resin就乱码了。有哪位高手知道是啥情况呀!!

解决方案 »

  1.   

    DB的数据都是正确的,之前都是用UTF-8存进去的。用自带mysql软件都可以查看,不是???。
      

  2.   


    head中加上这句
    <meta http-equiv=″content-Type″ content=″text/html; charset=utf-8″ />
    或者php中加上
    header("content-type:text/html;charset=utf-8");
      

  3.   

    试试在发送MYSQL指令的时候加上:mysql_query("set names gb2312") //设置MYSQL字符集。
      

  4.   

    你数据库建立的时候字符集也是utf-8的吗?
      

  5.   

    在你的php.ini设置编码。还有在你的程序端加上要转化的值;$re=iconv("UTF-8","GB2312",$res);
      

  6.   

    检查你的字符集设置http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码
      

  7.   

    谢谢各位回复,但是大家应该没仔细看我的帖子。
    mySql设置的就是UTF-8,
    DB查询之前也做了如下操作
    mysql_query("set names utf8")
    包括页面设置也是如下所示(如果不对的话,页面上的中文也会是乱码的,现在页面中文显示是正常的)
     <meta http-equiv=″content-Type″ content=″text/html; charset=utf-8″ />
    header("content-type:text/html;charset=utf-8");
    Resin的默认编码也设置为utf-8了。
    但是现在的情况还是,读取写入DB乱码。没辙了
    不知道是不是Resin连接数据库的问题。
      

  8.   

    是quercus源代码问题,已经解决,谢谢大家参与。