iptton 发表于 2006-11-10 18:14

编码问题!!!!

本打算断一段时间的网,现在又遇到编码问题。。。
网上关于编码问题的解决方法不少,但都大同小异
一个共同的性质是:都是授人鱼而非授人渔
都只是浮浅地说了下用哪句代码,
结果,如果你的环境与作者的有所不同,
那方法就不能奏效


这帖要把这个完全搞清!

各位有任何关于编码问题的欢迎跟帖

iptton 发表于 2006-11-10 18:23

问题描述:
文件:
index.htm

部分代码:



JS代码:
function loginsubmit(t){
      var str="loginid="+t.loginid.value;
      str+="&loginpassword="+t.loginpassword.value;
      str+="&logintype="
      for(var j=0;j<2;j++)
                if(t.logintype.status)
                        str+=t.logintype.value;
      SendJS("test.php",cblogin,str);
}


sendJS为一个XMLHTTPRequest封装。。中间代码省略


test.php   (ANSI)

<?php
    mysql_connect("localhost","XXX","XXX");
    mysql_select_db("school");

    //mysql_query("set names 'gbk'");
    $r=mysql_query("select * from student where id=3XXXXXXXX");
    $rr=mysql_fetch_assoc($r);
    $t=$rr['name'];
    echo($t."中文");
?>
      
返回的$rr['name']为三个中文字


MySql设置:default charset: gbk   数据库的表也是gbk

INDEX.htm为 ANSI
test.php为ANSI时,返回的name为   ?????

index.htm为ANSI
test.php为UTF-8时,返回的name为???中文

[ 本帖最后由 iptton 于 2007-5-18 23:14 编辑 ]

iptton 发表于 2006-11-10 18:27

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

index.htm有设这句与head处

另:上面的JS代码是在另一JS文件上的

iptton 发表于 2006-11-10 18:31

test.php上的这句

header('Content-type: text/html;charset=GB2312');

iptton 发表于 2006-11-10 18:57

网上搜到的最常见的答案是:

所有页面用UTF-8


不过这个明显不是时时奏效

iptton 发表于 2006-11-10 19:16

现在发现我的问题是:

XHR的实现用了GOOGLE的代码:

try {
    xhr = new XMLHttpRequest();
} catch (e) {
    var a = ['MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0',
      'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'MICROSOFT.XMLHTTP.1.0',
      'MICROSOFT.XMLHTTP.1', 'MICROSOFT.XMLHTTP'];
    for (var j = 0; i < a.length; j++) {
      try {
      xhr = new ActiveXObject(a);
      break;
      } catch (e) {
                alert("你的浏览器没支持XMLHTTPRequest,无法正常使用此系统");
      }
    }
}

换成这个:一切都没问题了。。。

if(window.ActiveXObject)
        xhr=new ActiveXObject("Microsoft.XMLHTTP");       
else
        xhr=new XMLHttpRequest();

iptton 发表于 2006-12-27 00:42

http://dev.mysql.com/doc/refman/5.1/zh/charset.html

所看过的说得最详尽的关于MYSQL编码问题

jinry 发表于 2007-1-2 19:26

oh,no,完全不懂....
页: [1]
查看完整版本: 编码问题!!!!