Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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
如何在ajax函数中使用php文件中的json数据_Php_Jquery_Ajax - Fatal编程技术网

如何在ajax函数中使用php文件中的json数据

如何在ajax函数中使用php文件中的json数据,php,jquery,ajax,Php,Jquery,Ajax,我正在尝试创建一个验证用户输入数据的登录页面。如果数据库中的“用户名”和“密码”不匹配,他将收到警告。 说到这个,我完全是个新手,所以我现在的代码是不同教程的组合 我的signin.php如下所示: header('Content-Type: application/json') $data = array(); // array to pass back data if(!empty($_POST["action"])) { if($_POST["action"] == "s

我正在尝试创建一个验证用户输入数据的登录页面。如果数据库中的“用户名”和“密码”不匹配,他将收到警告。 说到这个,我完全是个新手,所以我现在的代码是不同教程的组合

我的signin.php如下所示:

header('Content-Type: application/json')

$data = array();    // array to pass back data

if(!empty($_POST["action"]))
{
    if($_POST["action"] == "signin")
    {
       ...all the SQL code here...

        if(!empty($result))
        {
            foreach ($result as $row)
            {
                ...some SQL code here...

                $data["success"] = true;
                $data["message"]  = "Success!";                                       
            }            
        }
        else
        {
            $data["success"] = false;
            $data["message"]  = "Error!";
        }        
        echo json_encode($data);
    }
}
现在,我希望在jquery提交函数中使用此json数据,该函数使用ajax从signin.php获取数据:

<script>
    $("#login-form").submit(function(event) {
        $.ajax({
            type        : 'POST',
            url         : 'signin.php', 
            data        : { 'action': 'signin' },
            dataType    : 'json'
        }).done(function(data) {
            console.log(data.success);
            if(!data.success)
            {
                alert("ERROR");
            }
            else if (data.success)
            {
                alert("SUCCESS");
            }
        });
        event.preventDefault();
    });
</script>

$(“#登录表单”).submit(函数(事件){
$.ajax({
键入:“POST”,
url:'sign.php',
数据:{'action':'signin'},
数据类型:“json”
}).完成(功能(数据){
console.log(data.success);
如果(!data.success)
{
警报(“错误”);
}
else if(data.success)
{
警惕(“成功”);
}
});
event.preventDefault();
});

和。使用
控制台.log(数据)
可以查看整个对象的结构。我很确定你应该是
data['success']
而不是
data.success
。在整个对象上运行控制台日志应该可以帮助您清除这些问题。console.log(数据)没有给我提供任何我建议使用Firebug之类的开发工具进行调查的信息。应该会收到来自Ajax调用的响应,这应该显示在“网络”选项卡中。@Jeppe您到底在寻找什么?您是否有sql代码,或者这就是您所需要的?再次查看代码时,数据不会返回任何内容,因为php代码没有执行任何操作。另外,除了action='sign'之外,您不需要通过ajax函数传递任何数据。php代码从未从表单中获取任何登录数据,因为它没有被传递。使用jQuery的
$('#formID').serialize()
可以做到这一点。使用
console.log(data)
可以查看整个对象的结构。我很确定你应该是
data['success']
而不是
data.success
。在整个对象上运行控制台日志应该可以帮助您清除这些问题。console.log(数据)没有给我提供任何我建议使用Firebug之类的开发工具进行调查的信息。应该会收到来自Ajax调用的响应,这应该显示在“网络”选项卡中。@Jeppe您到底在寻找什么?您是否有sql代码,或者这就是您所需要的?再次查看代码时,数据不会返回任何内容,因为php代码没有执行任何操作。另外,除了action='sign'之外,您不需要通过ajax函数传递任何数据。php代码从未从表单中获取任何登录数据,因为它没有被传递。使用jQuery的
$('#formID').serialize()
可以做到这一点。使用
console.log(data)
可以查看整个对象的结构。我很确定你应该是
data['success']
而不是
data.success
。在整个对象上运行控制台日志应该可以帮助您清除这些问题。console.log(数据)没有给我提供任何我建议使用Firebug之类的开发工具进行调查的信息。应该会收到来自Ajax调用的响应,这应该显示在“网络”选项卡中。@Jeppe您到底在寻找什么?您是否有sql代码,或者这就是您所需要的?再次查看代码时,数据不会返回任何内容,因为php代码没有执行任何操作。另外,除了action='sign'之外,您不需要通过ajax函数传递任何数据。php代码从未从表单中获取任何登录数据,因为它没有被传递。使用jQuery的
$('#formID').serialize()
可以做到这一点。