1

如果用户正确输入用户名和密码然后进入home.html,我想检查我的mysql数据库,我有一些javascript代码可以检测用户何时单击登录按钮,但我不明白如何检查带有 javascript 的数据库,我知道如何在 php 中执行此操作,但我不明白如何从 javascript 调用 php 或直接在 js 代码中执行,这是一些代码:

html中的表格:

    <div id="password">
        <div class="input username"><input type="text" placeholder="User name" /></div>
        <div class="input password"><input type="password" placeholder="Password" /></div>
        <button>Log in</button>
        <a href="#" class="back">Back</a>
    </div>
</div>

然后在我的 Login.js 文件中我有这个:

function forgot() {
//Se ho scritto la password allora fai l'animazione wobble, altrimenti vai in home.html
    if($("#password .input.password input").attr("value")!='') {
        $.notification( 
            {
                title: "Wrong password",
                content: "Just leave the password field empty to log in.",
                icon: "!"
            }
        );
        $("#password").removeClass().addClass("animated wobble").delay(1000).queue(function(){ 
            $(this).removeClass();
            $(this).clearQueue();
        });
        $("#password .input.password input").attr("value", "").focus();
    } else {
        document.location.href = "home.html";
    }
}

现在登录我只检测该字段是否为空,但我想检测mysql数据库我如何检查它?因为我想如果用户输入错误的用户名和密码跨越 $notification 警报,任何人都可以帮助我吗?

4

4 回答 4

2

您不能直接从客户端 JS 与服务器端数据库进行通信。

要发出 HTTP 请求(向服务器端程序),请使用XMLHttpRequest 对象

于 2012-10-17T09:36:59.683 回答
2

请假设您的 html 表单如下所示:

<input id="uname" name="uname" type="text" placeholder="User name" />
<input id="pass" name="pass" type="password" placeholder="Password" />
<button id="btn_login">Log in</button>

假设 php 脚本命名checkPassword.php如下:

<?php
    /*
      1.Retrieve post data : "uname" and "pass".
      2.Cehck if  user name and password is valid.
    */
    if( /* valid user name and password */ ){
        echo "OK";
    }else{
        echo "NG";
    }
?>

Javascript 代码可能如下所示:

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script language="javascript">
$(function() {
// set a event handler to the button
  $("#btn_login").click(function() {
    // retrieve form data
    var uname = $("#uname").val();
    var pass = $("#pass").val();

    // send form data to the server side php script.
    $.ajax({
        type: "POST",
        url: "checkPassword.php",
        data: { uname:uname, pass:pass }
    }).done(function( data ) {

        // Now the output from PHP is set to 'data'.
        // Check if the 'data' contains 'OK' or 'NG'
        if (data.indexOf("OK") >= 0){

            // you can do something here
            alert("Login Successed.");
            location.href = "ok.html";

        }else if(data.indexOf("NG") >= 0){

            // you can do something here
            alert("Login Faild.");
            location.href = "ng.html";
        }
    });
  });
});
</script>
于 2012-10-17T10:23:50.673 回答
0
if(document.pressed=='SUBMIT')
    {
        var uname = document.getElementById('uname').value;

        if(uname.trim()=='' || uname.trim()==null)
        {
            alert("<?php echo 'uname_null'?>");
            return false;
        }

}
于 2012-10-17T12:41:07.487 回答
0

如果您使用存储过程,您可以在 sql server 端进行验证部分

于 2013-02-09T01:15:03.993 回答