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

小问题:您的代码似乎太多了。最后一个。是打字错误吗?