Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.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 如何处理json编码的php mysql数组_Javascript_Php_Jquery - Fatal编程技术网

Javascript 如何处理json编码的php mysql数组

Javascript 如何处理json编码的php mysql数组,javascript,php,jquery,Javascript,Php,Jquery,当我编码时,我试图从MySQL表中获取返回的结果 echo json_encode($result); 我使用javascript获取它 $.ajax({ url: "helpers/data.php", type: "GET", dataType:"json", success: function(returnData){ document.write(returnData); } 这就是它的回报 [object Object]

当我编码时,我试图从
MySQL
表中获取返回的结果

echo json_encode($result);
我使用
javascript
获取它

 $.ajax({
  url: "helpers/data.php",
  type: "GET",
  dataType:"json",
  success: function(returnData){
      document.write(returnData);     

          }
这就是它的回报

[object Object],[object Object],[object Object],[object Object]
我可以通过这样做来修复它

echo json_encode(json_encode($result));
然后返回正确的数组


但是使用相同的
jquery
它将变量返回为
未定义的

它将返回对象数组,我相信如果您使用JSON库解决您的案例

它将返回对象数组,我相信如果您使用JSON库解决您的案例

尝试使用
console.log(returnData)
在Chrome或Firefox(或任何像样的浏览器)中,查看开发人员工具/控制台输出,以结构化方式浏览您的数据

document.write()
无法从javascript对象提供可读的结构化输出。因此,它返回
[object object]
作为真实存在的表示

在您的例子中,封装的
json_encode()
调用基本上是这样做的:第二个调用(在第一个调用中)将返回一个有效的json数据字符串,然后第一个调用将把整个json对象包装到另一个对象中,例如:

// begin json
{
    // begin encapsulated json
    {
        header: 'any data'
    }
    // end of encapsulated json
}    
// end json
这不是你想要的。在第一级上对像这样返回的数据进行迭代只会得到一次迭代:在外部一次迭代中包装整个json对象。因此,
.header
无法返回任何内容,因为它根本不在那里

无需将第二个
json_encode()
包装在第一个中,因为无论提供的数据有多少级别,它都将递归地将提供的数据转换为json对象定义字符串(或者可能有一些限制,我不知道,可能是基于客户端运行的系统架构)

因此:

  • 删除外部的
    json\u encode()
    ,只保留对该函数的一个调用(如开始时所做的那样)
  • 使用
    console.log()
    调试数据并查看在哪个级别返回的内容
  • 相应地调整代码,以便最终能够通过正确的键访问值

  • 除非您提供更多信息(例如JSON数据的示例),否则很难帮助您完成第3步。

    尝试在Chrome或Firefox(或任何像样的浏览器)中使用
    console.log(returnData)
    ,并查看开发人员工具/控制台输出,以结构化方式查看您的数据

    document.write()
    无法从javascript对象提供可读的结构化输出。因此,它返回
    [object object]
    作为真实存在的表示

    在您的例子中,封装的
    json_encode()
    调用基本上是这样做的:第二个调用(在第一个调用中)将返回一个有效的json数据字符串,然后第一个调用将把整个json对象包装到另一个对象中,例如:

    // begin json
    {
        // begin encapsulated json
        {
            header: 'any data'
        }
        // end of encapsulated json
    }    
    // end json
    
    这不是您想要的。在第一级上对像这样返回的数据进行迭代只会给您一次迭代:整个json对象包装在外部对象中。因此
    。header
    无法返回任何内容,因为它根本不在那里

    无需将第二个
    json_encode()
    包装在第一个中,因为无论提供的数据有多少级别,它都将递归地将提供的数据转换为json对象定义字符串(或者可能有一些限制,我不知道,可能是基于客户端运行的系统架构)

    因此:

  • 删除外部的
    json\u encode()
    ,只保留对该函数的一个调用(如开始时所做的那样)
  • 使用
    console.log()
    调试数据并查看在哪个级别返回的内容
  • 相应地调整代码,以便最终能够通过正确的键访问值
  • 除非您提供更多信息(例如JSON数据示例),否则很难帮助您完成第3步。

    在php文件中

    echo json_encode($result);
    
    在jquery中,在$.ajax的成功回调中

    returnData.forEach(function(elem) {
        console.log(elem);
        // do something with the individual objects
    });
    
    您可以直接使用

    console.log(returnData);
    
    在php文件中

    echo json_encode($result);
    
    在jquery中,在$.ajax的成功回调中

    returnData.forEach(function(elem) {
        console.log(elem);
        // do something with the individual objects
    });
    
    您可以直接使用

    console.log(returnData);
    

    不要执行双重
    json\u encode
    !在javascript中,您接收的是对象,而不是字符串,因此您不能简单地编写它。如果您需要html中对象的字符串表示,请使用
    json.stringify(数据)
    。但您可能需要以另一种方式处理对象。

    不要执行双重
    json\u encode
    !在javascript中,您接收的是对象,而不是字符串,因此您不能简单地编写它。如果您需要html中对象的字符串表示,请使用
    json.stringify(数据)
    。但您可能需要以另一种方式处理对象。

    处理JSON数据 这是一个JSON示例。在前面的示例中,
    键将是
    1
    2
    3
    ,而
    val
    将是
    “奇异的感觉”
    “小珠子的小眼睛”
    “小鸟在我家门口的台阶上俯仰”
    。现在您知道如何访问数据了

    因为我不知道你的JSON结构,所以我无法进一步帮助你。如果你用一些JSON代码更新你的问题以及你想做什么,我会更具体。

    处理JSON数据 这是一个JSON示例。在前面的示例中,
    键将是
    1
    2
    3
    ,而
    val
    将是
    “奇异的感觉”
    “小珠子的小眼睛”
    “小鸟在我家门口的台阶上俯仰”
    。现在您知道如何访问数据了

    因为我不知道你的JSON结构,我不能帮你一个忙