Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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
Php json数据对象赢得';附加_Php_Jquery_Ajax_Json - Fatal编程技术网

Php json数据对象赢得';附加

Php json数据对象赢得';附加,php,jquery,ajax,json,Php,Jquery,Ajax,Json,我是新手,所以放松点: 我不明白为什么这个$.ajax函数不能将我的xhr数据附加到正确的位置 // gets the cache data from our php file function getcaches() { $.ajax({ method: 'get', url: "php/findcache.php", dataType: "json", // return type data is json su

我是新手,所以放松点:

我不明白为什么这个$.ajax函数不能将我的xhr数据附加到正确的位置

    // gets the cache data from our php file
function getcaches() {
    $.ajax({
        method: 'get',
        url: "php/findcache.php",
        dataType: "json", // return type data is json
        success: function(data){ // <-- data is in json format
            //parse the json data
            $('#caches').append($('<p>' + data[0].name + '</p>'));
        },
        error: function(data) {
            console.log('error');
        }
    });
    return false;   
}

我只是不明白我做错了什么。有任何指针吗?

如果您有Firebug,请在此处设置断点:

$('#caches').append($('<p>' + data[0].name + '</p>'));
$(“#缓存”)。追加($(“”+数据[0]。名称+”

);
然后检查
数据
。您的调试数据显示
OU0397
为键;由于PHP的
json_encode
,这意味着您可能会得到一本字典。以不同的方式遍历字典(例如,数据{…}中i的


你也可以考虑改变PHP,只返回第一个结果;这简化了JavaScript并减少了网络开销(例如使用

json_encode(当前($data))
)。

如果您有Firebug,请在此处设置断点:

$('#caches').append($('<p>' + data[0].name + '</p>'));
$(“#缓存”)。追加($(“”+数据[0]。名称+”

);
然后检查
数据
。您的调试数据显示
OU0397
为键;由于PHP的
json_encode
,这意味着您可能会得到一本字典。以不同的方式遍历字典(例如,数据{…}
中i的


你也可以考虑改变PHP,只返回第一个结果;这简化了JavaScript并减少了网络开销(例如,使用

json_encode(当前($data))
)。

代码示例具有XSS漏洞(如果name具有”代码示例具有XSS漏洞(如果name具有“为什么您认为自己具有
[0]
”?它是数据[0].name还是data.name?我两个都试过了,都没有给我答案。不过,数据对象有三个条目,我只粘贴了一个以节省空间。我应该如何解决这些问题?您在firebug中看到的不是JSON为什么您认为您有一个
[0]
?它是数据[0].name还是data.name?我两个都试过了,但都没有给出响应。虽然数据对象有三个条目,但为了节省空间,我只粘贴了一个。我应该如何解决这些问题?您在firebug中看到的不是JSON
$('#caches').append($('<p/>').text(data[0].name));