Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法接收从php到Ajax、jQuery的成功消息_Javascript_Php_Jquery_Ajax - Fatal编程技术网

Javascript 无法接收从php到Ajax、jQuery的成功消息

Javascript 无法接收从php到Ajax、jQuery的成功消息,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我正在使用jQuery/Ajax,我需要php在表单接收状态时向我发送成功、错误消息。我在谷歌上搜索了一下,但仍然无法收到任何消息。我正在使用json_编码 JS代码: $(function() { $("#logInBtn").click(function(e) { var array = []; var userName = $("#logIn").val(); var passWrd = $("#password").val(); var fla

我正在使用jQuery/Ajax,我需要php在表单接收状态时向我发送成功、错误消息。我在谷歌上搜索了一下,但仍然无法收到任何消息。我正在使用json_编码

JS代码:

$(function()

 {
 $("#logInBtn").click(function(e) 
 {
    var array = [];

    var userName = $("#logIn").val();
    var passWrd = $("#password").val();
    var flag = false;

    alert("Log In alert");

    if(userName == '' || passWrd == '')
    {
        alert("Username or password cannot be empty");
        flag = false;
    }
    else
    {
        array.push(userName);
        array.push(passWrd);

        alert(array);
        flag = true;
    }

    if(flag == true)
    {
        alert("going for ajax");
        $.ajax({
            url:"http://localhost/login.php",
            data:
            {
                userName: array[0],
                passWrd: array[1],
            },
            type:"POST",
            dataType:"json",
            success:function(suc){
                alert("suc");
         alert(suc);   
                console.log(suc);
            },
            error: function(err)
            {
            alert("err");
            alert(err);
            console.log(err);
        }
        });
    }
    else
    {
        alert("form error");
    }
        alert("final check here");
});
    }
    else
    {
        alert("form error");
    }
        alert("final check here");
});
}
);
php代码:

<?php

header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 01 Jan 2016 00:00:00 GMT');

// The JSON standard MIME header.
header('Content-type: application/json');
     $con=mysql_connect("localhost","root", "");
     mysql_select_db("monkey",$con);


$name = $_POST['userName'];
$pass = $_POST['passWrd'];


$query="INSERT INTO logInCheker(login,password) VALUES('$name','$pass');";


   if(mysql_query($query))
   {
       $response_array['status'] = 'success'; 
       echo json_encode($response_array);
   }
else
{
   $response_array['status'] = 'error'; 
   echo json_encode($response_array);

}


?>

您的ajax请求似乎有问题,请尝试以下操作:

$.ajax({                
    ...
    ...
    ...
    success: function (response) {
        console.log(response);
    },
    error: function (response) {
        console.log(response);
    }
});
此外,您还应将其用于所有数据库交互。

检查控制台。 您的php脚本不是json,原因如下:

echo $name;
echo "Donkey";

尝试删除此回音。

以下标题解决了此问题

header("Access-Control-Allow-Origin: *");

抱歉,问题中没有什么混淆,我的英语也不好。

您是否阻止单击“登录”按钮提交任何表单或更改url?你看起来不是。你能告诉我你收到了什么,问题出在哪里吗?@lbtehaz你让它工作了吗?@Trim,我收到了php文件中的数据,但我的jQuery抛出了错误消息。我已在错误和成功功能中设置了警报。每次,错误警报函数都会被命中。@Trim,我也用错误函数更新了它。为什么会被否决?我觉得这是对的。因为在他的ajax中,他指定了JSON类型,所以根据jquery文档,如果解析失败,将不会调用success(),这不是我实际的文件。这是服务器端的一些调试。这是我以前的代码。我删除了错误部分,以检查它在只有成功块时是否有效。。我现在已经用错误消息更新了代码