Php 如何访问Json响应

Php 如何访问Json响应,php,jquery,json,file-upload,Php,Jquery,Json,File Upload,这是我上传文件到服务器的代码 $(function () { $('#phy_fileupload').fileupload({ autoUpload: true, add: function (e, data) { $('body').append('<p class="upl">Uploading...</p>') data.submit(); }, progressall: function (e, d

这是我上传文件到服务器的代码

$(function () {
$('#phy_fileupload').fileupload({
    autoUpload: true,
    add: function (e, data) {
        $('body').append('<p class="upl">Uploading...</p>')
        data.submit();
    },
    progressall: function (e, data) {
        var progress = parseInt(data.loaded / data.total * 100, 10);
        $('#phy_progress .bar').css(
            'width',
            progress + '%'
        );
    },
    done: function (e, data) {
        $.each(data.files, function (index, file) {
             $('.upl').remove();
                $('<p/>').text(file.name).appendTo("#phy_files");
        });
    }
});
});
现在的问题是,它在div中添加了文件名(#phy_files)(即2013-06-20_1235.png),无论我如何添加上传到服务器的新文件名(即2013-06-20_1235UQn5gm5SRUPzbA.png)。现在我花了一整天的时间试图访问Json的这个响应,但很显然,要么我一直在看错误的一端,要么我完全迷路了,我至今不知道如何访问这个响应

任何帮助都将不胜感激。如果您不明白我在这里写的内容,请告诉我,如果需要,我非常乐意再次解释。多谢各位

简言之:


问题是上传的文件名为'file.png',在服务器上它的名称改为'filexyzersdf.png',现在我想把响应文件名写在我的div(#phy_文件)中,但它写的是'file.png',而不是

,所以如果你控制台.log数据,日志中是什么

done: function (e, data) {
console.log(data);
        $.each(data.files, function (index, file) {
             $('.upl').remove();
                $('<p/>').text(file.name).appendTo("#phy_files");
        });
    }
done:函数(e,数据){
控制台日志(数据);
$.each(data.files,函数(索引,文件){
$('.upl').remove();
$('

').text(file.name).appendTo(“#phy_文件”); }); }


现在它变得清晰了。。。好的,那么你应该这样做:

done: function (e, data) {
    var res = jQuery.parseJSON(data.result);
    $.each(res.files, function (index, file) {
         $('.upl').remove();
            $('<p/>').text(file.name).appendTo("#phy_files");
    });
}
done:函数(e,数据){
var res=jQuery.parseJSON(data.result);
$.each(res.files,function)(索引,文件){
$('.upl').remove();
$('

').text(file.name).appendTo(“#phy_文件”); }); }


谢谢你,reyaner这是我在i console.log ok之后得到的,你从哪里得到的:{“文件”:[{“名称”:“2013-06-20_1235UQn5gm5SRUPzbA.png”…在你的帖子中。?在你的图片中。文件名是:2013-06-20_1235.png…是的,我上传的文件名是:2013-06-20_1235.png。但是服务器脚本更改了上传的文件名,并创建了一个json,即->{“文件”:[{“名称”:“2013-06-20_1235; uqn5gm5gsrupzba.png”…在我们的回答中。在这张图片中,你可以看到这是从哪里来的:在结果标题下进行检查。现在我得到的是,变量数据包含所有上传的信息,结果包含所有从服务器返回的信息。现在我如何访问“结果”标题下的信息。它起作用了:)非常感谢Reyaner。我真的很感谢你的帮助:)花了一整天的时间……但我可以说它终于起作用了:)谢谢你。没问题,先生!:)只是解释一下,结果是一个字符串。所以你必须把它解析成一个JSON对象……塞拉姆!谢谢你的解释。:)
done: function (e, data) {
console.log(data);
        $.each(data.files, function (index, file) {
             $('.upl').remove();
                $('<p/>').text(file.name).appendTo("#phy_files");
        });
    }
done: function (e, data) {
    var res = jQuery.parseJSON(data.result);
    $.each(res.files, function (index, file) {
         $('.upl').remove();
            $('<p/>').text(file.name).appendTo("#phy_files");
    });
}