PHP头条
热点:

php+Ajax进行验证用户名的时候遇到的编码有关问题


php+Ajax进行验证用户名的时候遇到的编码问题
我在测试代码的时候,遇到了这个问题。
代码如下:
index.php

《script》
  
  用户名:
  
  
  

ajax.js


var xmlHttp;
function S_xmlhttprequest() {
if(window.ActiveXObject) {
xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
} else if(window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}

function funphp100(name) {

   var f=document.myform.user.value;
S_xmlhttprequest();
xmlHttp.open("GET","for.php?id="+f,true);
xmlHttp.onreadystatechange = byphp;
xmlHttp.send(null);
}

function byphp() {

   if(xmlHttp.readyState == 1) {
 document.getElementById('php100').innerHTML = "";
}

     if(xmlHttp.readyState == 4 ){
if(xmlHttp.status == 200) {
          var byphp100 =  xmlHttp.responseText;
          document.getElementById('php100').innerHTML = byphp100;
}
}


}

for.php

if(@$_GET[id]){
sleep(1);
 $conn=mysql_connect('localhost','root','');
 mysql_select_db('test',$conn);

 echo $sql="SELECT * FROM `user` where `user`='$_GET[id]'";
 $q=mysql_query($sql);

 if(is_array(mysql_fetch_row($q))){
  echo "用户名已经存在";
 }else
 {
   echo "可以使用";
 }
}
?>

我分别在本地环境和BAE环境都做了测试。
都出现了汉字不能正常的传送的现象,数据库中已经有“千手”这个用户了,但是还是提示可以使用该用户,貌似是编码的问题。
,求高人解答~  PHP Ajax MySQL 测试 分享到:
------解决方案--------------------
f=encodeURI(f); 才对 忘了赋值! 试试!
------解决方案--------------------
很可能是数据库编码的问题:
show variables like 'char%'

没猜错的话,应该是GBK吧

www.phpzy.comtrue/phprm/6853.htmlTechArticlephp+Ajax进行验证用户名的时候遇到的编码有关问题 php+Ajax进行验证用户名的时候遇到的编码问题 我在测试代码的时候,遇到了这个问题。 代码如下: index.php 《script》 用户名: ; aja...

相关文章

相关频道:

PHP之友评论

今天推荐