PHP中的AJAX的问题
注册页面:<scripttype="text/javascript">functionajax(){varhttp=newXMLHttpRequest();http.op...
注册页面:
<script type="text/javascript">
function ajax(){
var http=new XMLHttpRequest();
http.open("GET","http://localhost/again/ajax.php?te1="+document.getElementById("te1").value,true);
http.send(null);
http.onreadystatechange=function (){
if(http.readyState==2){
document.getElementById("check").innerHTML="Loading...";
}
if(http.readyState==4)
{
document.getElementById("check").innerHTML=http.responseText;
}
}
return false;
}
document.write(unescape('%D5%C5%C8%FD'));
</script>
<form name="form1" method="GET" action="ajax.php" onsubmit="return ajax()">
用户:<input name="te1" type="text" id="te1"><b id="check"></b><a href="" onclick="return ajax()">Check</a><br/>
密码:<input name="pass" type="password" id="te1"><br/>
<input type="submit" name="sub" value="提交">
</form>
</body>
这是ajax的页面:
<?php
$con=mysql_connect("localhost","root","")or die ("连接失败");
$b=mysql_select_db("myzhuan");
mysql_query("set names 'GBK'");
$c=mysql_query("select * from twotable");
$d=array();
$i=0;
while($row=mysql_fetch_row($c)){
$d[$i]=$row[1];
$i++;
}
if($_GET['te1']!=""){
if(in_array($_GET['te1'],$d)){
echo "<b style='color:red'>stop</b>";
}
else{
echo "<b style='color:green'>you can</b>";
}
}
?>
如果我用的是中文名注册那边不管数据库存不存在那个用户名都显示的可以注册
传递中文的时候我PHP中应该怎么解码才能传递正确,或者在登陆界面应该怎么编码传递中文!! 展开
<script type="text/javascript">
function ajax(){
var http=new XMLHttpRequest();
http.open("GET","http://localhost/again/ajax.php?te1="+document.getElementById("te1").value,true);
http.send(null);
http.onreadystatechange=function (){
if(http.readyState==2){
document.getElementById("check").innerHTML="Loading...";
}
if(http.readyState==4)
{
document.getElementById("check").innerHTML=http.responseText;
}
}
return false;
}
document.write(unescape('%D5%C5%C8%FD'));
</script>
<form name="form1" method="GET" action="ajax.php" onsubmit="return ajax()">
用户:<input name="te1" type="text" id="te1"><b id="check"></b><a href="" onclick="return ajax()">Check</a><br/>
密码:<input name="pass" type="password" id="te1"><br/>
<input type="submit" name="sub" value="提交">
</form>
</body>
这是ajax的页面:
<?php
$con=mysql_connect("localhost","root","")or die ("连接失败");
$b=mysql_select_db("myzhuan");
mysql_query("set names 'GBK'");
$c=mysql_query("select * from twotable");
$d=array();
$i=0;
while($row=mysql_fetch_row($c)){
$d[$i]=$row[1];
$i++;
}
if($_GET['te1']!=""){
if(in_array($_GET['te1'],$d)){
echo "<b style='color:red'>stop</b>";
}
else{
echo "<b style='color:green'>you can</b>";
}
}
?>
如果我用的是中文名注册那边不管数据库存不存在那个用户名都显示的可以注册
传递中文的时候我PHP中应该怎么解码才能传递正确,或者在登陆界面应该怎么编码传递中文!! 展开
4个回答
展开全部
中文字符先用escape加密。 //JS 自带escape和unescape
在php文件里,使用自定义的unescape解密 //php需要自己定义这个函数,网上很多。你找找。
在php文件里,使用自定义的unescape解密 //php需要自己定义这个函数,网上很多。你找找。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
urlencode()
对中文参数进行转义。
对中文参数进行转义。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先,最好将数据库编码为gb2312_chinese_ci(建立数据库的时候设定,假如用phpmyadmin的话可以在“操作”选项卡中重新设定);
然后在模板页面(也就是注册页面)加入<html ><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
</head>,这样应该就可以了,或者都用UTF-8编码
然后在模板页面(也就是注册页面)加入<html ><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
</head>,这样应该就可以了,或者都用UTF-8编码
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
纯属页面编码问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询