Javascript 完成用户身份验证后隐藏div对话框
我有这个按钮,我想要它做的是验证用户并隐藏对话框容器Javascript 完成用户身份验证后隐藏div对话框,javascript,php,jquery,authentication,httprequest,Javascript,Php,Jquery,Authentication,Httprequest,我有这个按钮,我想要它做的是验证用户并隐藏对话框容器 <button onclick=" authenticate();">Register</button> 寄存器 每当我检查xmlhttp.responseText时,它都可以正常工作,但是当我尝试将它分配给一个变量进行条件比较时,我就遇到了问题 我要做的是使用login.php文件检查用户是否存在,并根据xmlhttp.responseText关闭对话框 <script> function login
<button onclick=" authenticate();">Register</button>
寄存器
每当我检查xmlhttp.responseText时,它都可以正常工作,但是当我尝试将它分配给一个变量进行条件比较时,我就遇到了问题
我要做的是使用login.php文件检查用户是否存在,并根据xmlhttp.responseText关闭对话框
<script>
function login(){
var username= $("#txtloginusername").val();
var password = $("#txtloginpassword").val();
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
//var status = document.getElementById ("logindisplay").innerHTML=xmlhttp.responseText;
var status =xmlhttp.responseText;
$("#logindisplay").html(status);
/*if(status=="yes")
{
$("#logindisplay").html("user exist");
}
else
{
//$("#dialogcontainer").slideUp();
$("#logindisplay").html("NO");
}*/
}
}
xmlhttp.open("GET","login.php?username="+username +"&password=" + password,true);
xmlhttp.send();
}
</script>
函数登录(){
var username=$(“#txtloginusername”).val();
var password=$(“#txtloginpassword”).val();
if(window.XMLHttpRequest)
{
xmlhttp=新的XMLHttpRequest();
}
其他的
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
xmlhttp.onreadystatechange=函数()
{
if(xmlhttp.readyState==4&&xmlhttp.status==200)
{
//var status=document.getElementById(“logindisplay”).innerHTML=xmlhttp.responseText;
var status=xmlhttp.responseText;
$(“#logindisplay”).html(状态);
/*如果(状态=“是”)
{
$(“#logindisplay”).html(“用户存在”);
}
其他的
{
//$(“#dialogcontainer”).slideUp();
$(“#logindisplay”).html(“否”);
}*/
}
}
xmlhttp.open(“GET”、“login.php?username=“+username+”&password=“+password,true”);
xmlhttp.send();
}
这是用于用户身份验证的div对话框,我希望它在完成身份验证后消失
<div id="dialogcontainer">
<div id="dialog">
<h3>Welcome to Talk Login</h3>
<p>Username</p>
<input type="text" id="txtloginusername"/>
<p>Password</p>
<input type="password" id="txtloginpassword"/> <br /><br />
<button onclick="login()">Login</button>
<button onclick="javascript:$('#dialogcontainer').slideUp();">Exit</button>
<br>
<br>
<div id="logindisplay" class ="display"></div>
</div>
</div>
欢迎登陆聊天
用户名
密码
登录
出口
login.php文件
<?php
$username= $_GET["username"];
$password= $_GET["password"];
$db = mysql_connect("localhost","root","") or die (mysql_error());
mysql_select_db("esk",$db);
$sqlcommand = "SELECT * FROM user WHERE username = '$username'";
$result = mysql_query($sqlcommand,$db);
if(mysql_num_rows($result)>=1)
{
echo "yes";
}
else
{
echo "no";
}
//$result = mysql_query($sqlcommand,$db);*/
?>
您可以这样做:
function login() {
var username= $('#txtloginusername').val();
var password = $('#txtloginpassword').val();
$.ajax({
url: 'login.php',
type: 'POST',
data: {
username: username,
password: password
},
success: function(response) {
if ( response === 'yes' ) {
$('#logindisplay').html('user exist');
} else {
$('#logindisplay').html('NO');
}
},
error: function(xhr) {
// do something nice with errors you might get
}
});
}
只要此对话框用于登录,您就不应该获取请求并使用POST
。小问题:您的代码似乎太多了。最后一个。是打字错误吗?