我无法使用jquery ajax连接数据库

时间:2016-11-08 10:38:01

标签: php jquery ajax

我无法使用jquery ajax连接数据库。

以下是login1.html页面

.bss

表单值通过jquery ajax

传输
    <form method='POST'>
                <div class="username">
                    <input type="text" id='name' name="name" class="form-control" placeholder="Enter your username">
                    <i class="glyphicon glyphicon-user"></i>
                </div>
                <div class="password">
                    <input type="password" id='password' name='password' class="form-control" placeholder="Enter your password">
                    <i class="glyphicon glyphicon-lock"></i>
                </div>
                <div id="error"></div>
                <div class="custom-radio-checkbox">
                    <input tabindex="1" type="checkbox" class="bluecheckradios">
                    <label>Remember me</label>
                </div>
                <script>
                    $(document).ready(function(){
                      $('.bluecheckradios').iCheck({
                        checkboxClass: 'icheckbox_flat-blue',
                        radioClass: 'iradio_flat-blue',
                        increaseArea: '20%' // optional
                      });
                    });     
                </script>
                <input type="submit" class="btn btn-primary style2" name='submit' id="submit" value="Sign In">
            </form>

**这是数据连接页面进程/ login.php **

<script>

$(document).ready(function(){

   // jQuery methods go here...


$('#submit').click(function(){

    var username = $('#name').val();
    var pass = $('#password').val();

    var datastring = {username:username,pass:pass};
    if($.trim(username).length>0 && $.trim(pass).length>0){
        $.ajax({
        type: "POST",
        url : "process/login.php",
        data : datastring,
        cache: false,
        beforeSend : function(){
            $("#submit").val('Connectiing...');
        },
        success:function(data){
            if(data){
                window.location.href('http://www.google.com');
            }
            else{
                $('#loginone').shake();
                $('#submit').val('Login')
                $("#error").html("<span style='color:red'>Error:</span>Invalid Username or Password");
            }
        }

        });
    }
return false;

});

});

</script>

如果我传递了正确的凭据,我会收到错误的用户名和密码错误。

3 个答案:

答案 0 :(得分:1)

您没有通过ajax发送提交的值,将您的if更改为

 if(isset($_POST['username']) && isset($_POST['pass']) ){ 

或将值添加到ajax:

datastring = {username:username,pass:pass,submit:"true"};

答案 1 :(得分:1)

你得到wrong username and password因为你的PHP没有在ajax成功中返回任何东西。

这里错了:

您正在ajax请求中发送用户名和密码,但使用submit输入检查是错误的,因为提交不是ajax数据的一部分。

您还可以在php中检查ajax请求中的内容:

print_r($_POST);

在这里,您可以将问题解决为:

if(count($_POST) > 0) // check $_POST array > 0 or not..

而不是:

if(isset($_POST['submit'])){ // submit not available in $_POST

答案 2 :(得分:0)

您通过Ajax发送到PHP脚本的对象数据没有名为&#34; submit&#34;因此这部分代码将失败

if(isset($_POST['submit'])){

只需删除该if语句,您就可以了......您可以同样检查您的$_POST超级全局内的数据是否与问题下方评论中建议的devpro一样,或者只是检查仅包含您在$_POST变量中发送的字段。