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,我在使用Json数组时遇到问题 Myjson数据: { "res": ["000000000078", "00000001", "1367771147", "das ist mail text", "000000000080", "00000001", "1367771147", "das ist mail text", "000000000081", "00000001", "1367771147", "das ist mail tex

我在使用Json数组时遇到问题

Myjson数据

{
    "res": ["000000000078", "00000001", "1367771147", "das ist mail text",
            "000000000080", "00000001", "1367771147", "das ist mail text", 
            "000000000081", "00000001", "1367771147", "das ist mail text", 
            "000000000082", "00000001", "1367771147", "das ist mail text", 
            "000000000083", "00000001", "1367771147", "das ist mail text",
            "000000000085", "00000001", "1367771147", "das ist mail text", 
            "000000000090", "00000001", "1367771147", "das ist mail text", 
            "000000000091", "00000001", "1367771147", "das ist mail text", 
            "000000000092", "00000001", "1367771147", "das ist mail text", 
            "000000000093", "00000001", "1367771147", "das ist mail text"],
    "fvdfvv": "sdfsd"
}
$(document).ready(function () {
    $.ajax({
        type: "GET",
        url: "mtable.php",
        data: "",
        dataType: 'json',
        success: function (result) {
            var id_mail = result.res[0];
            var id_user = result.res[1];
            var mail_datesent = result.res[2]
            var mail_text = result.res[3]

            $.each(result.res, function (i, data) {
                console.log(data);

                $('#example').append("<tr><td><b>id: </b>" + id_mail + "</td><td><b> leistung: </b>" + id_user + "</td><td><b> temp: </b>" + mail_datesent + "</td><td><b> Text: </b>" + mail_text + "</td></tr><br />");

            });
        }
    });
});
<p>id: 000000000078  leistung: 00000001  temp: 1367771147  Text: das ist mail text </p>
<p>id: 000000000078  leistung: 00000001  temp: 1367771147  Text: das ist mail text </p>
<p>id: 000000000078  leistung: 00000001  temp: 1367771147  Text: das ist mail text </p>
html站点中调用这些内容:

{
    "res": ["000000000078", "00000001", "1367771147", "das ist mail text",
            "000000000080", "00000001", "1367771147", "das ist mail text", 
            "000000000081", "00000001", "1367771147", "das ist mail text", 
            "000000000082", "00000001", "1367771147", "das ist mail text", 
            "000000000083", "00000001", "1367771147", "das ist mail text",
            "000000000085", "00000001", "1367771147", "das ist mail text", 
            "000000000090", "00000001", "1367771147", "das ist mail text", 
            "000000000091", "00000001", "1367771147", "das ist mail text", 
            "000000000092", "00000001", "1367771147", "das ist mail text", 
            "000000000093", "00000001", "1367771147", "das ist mail text"],
    "fvdfvv": "sdfsd"
}
$(document).ready(function () {
    $.ajax({
        type: "GET",
        url: "mtable.php",
        data: "",
        dataType: 'json',
        success: function (result) {
            var id_mail = result.res[0];
            var id_user = result.res[1];
            var mail_datesent = result.res[2]
            var mail_text = result.res[3]

            $.each(result.res, function (i, data) {
                console.log(data);

                $('#example').append("<tr><td><b>id: </b>" + id_mail + "</td><td><b> leistung: </b>" + id_user + "</td><td><b> temp: </b>" + mail_datesent + "</td><td><b> Text: </b>" + mail_text + "</td></tr><br />");

            });
        }
    });
});
<p>id: 000000000078  leistung: 00000001  temp: 1367771147  Text: das ist mail text </p>
<p>id: 000000000078  leistung: 00000001  temp: 1367771147  Text: das ist mail text </p>
<p>id: 000000000078  leistung: 00000001  temp: 1367771147  Text: das ist mail text </p>

这里json加载整个表,但我需要这些行将其正确地放入datatable。我确信上面的代码不能用于JQuery.datatables,对吗?

不要将您的res构建为
简单数组
,而是将其构建为对象数组

其中数组中的每个对象都是电子邮件收件人

按照当前执行代码的方式,您似乎在对前4个索引项中的值进行预评估

因此,对于每个项目,您会看到一个重复的序列,即数组的总长度。 有点像这样

{
    "res": [{
              "id" : "000000000078",
              "leistung" : "00000001",
              "temp" :"1367771147",
              "text" : "das ist mail text"
             }, {
              "id" : "000000000079",
              "leistung" : "00000001",
              "temp" :"1367771147",
              "text" : "das ist mail text"
             },{
              "id" : "000000000080",
              "leistung" : "00000001",
              "temp" :"1367771147",
              "text" : "das ist mail text"
             },
          ],
    "fvdfvv": "sdfsd"
}

因此,您的数据更具组织性。

不要将您的res构建为
简单数组
,而是将其构建为对象数组

其中数组中的每个对象都是电子邮件收件人

按照当前执行代码的方式,您似乎在对前4个索引项中的值进行预评估

因此,对于每个项目,您会看到一个重复的序列,即数组的总长度。 有点像这样

{
    "res": [{
              "id" : "000000000078",
              "leistung" : "00000001",
              "temp" :"1367771147",
              "text" : "das ist mail text"
             }, {
              "id" : "000000000079",
              "leistung" : "00000001",
              "temp" :"1367771147",
              "text" : "das ist mail text"
             },{
              "id" : "000000000080",
              "leistung" : "00000001",
              "temp" :"1367771147",
              "text" : "das ist mail text"
             },
          ],
    "fvdfvv": "sdfsd"
}

因此,您的数据更有条理。

实际上,您应该更改JSON数据,以便每个电子邮件结果都是独立的。但是如果你被这些数据所困扰,那么我想你应该这样做:

for(var i=0,l = result.res.length;i<l ;i+=4){
   var id_mail = result.res[i]; 
   var id_user = result.res[i+1]; 
   var mail_datesent = result.res[i+2] 
   var mail_text = result.res[i+3]
   $('#example').append("<tr><td><b>id: </b>"+id_mail+"</td><td><b> leistung: </b>"+id_user+"</td><td><b> temp: </b>"+mail_datesent+"</td><td><b> Text: </b>"+mail_text+ "</td></tr><br />");
}

for(var i=0,l=result.res.length;i实际上,您应该更改JSON数据,以便每个电子邮件结果都是独立的。但是如果您被这些数据困扰,那么我想您应该这样做:

for(var i=0,l = result.res.length;i<l ;i+=4){
   var id_mail = result.res[i]; 
   var id_user = result.res[i+1]; 
   var mail_datesent = result.res[i+2] 
   var mail_text = result.res[i+3]
   $('#example').append("<tr><td><b>id: </b>"+id_mail+"</td><td><b> leistung: </b>"+id_user+"</td><td><b> temp: </b>"+mail_datesent+"</td><td><b> Text: </b>"+mail_text+ "</td></tr><br />");
}

for(var i=0,l=result.res.length;i+1)我认为这是处理此类数据的正确方法。是的,这是正确的:但在php中创建更好的数组时,请尝试读取它,这样我在JQuery.js或其他`[{“数据”{“id\u mail”:“000000078”,“id\u用户”:“00000001”,“mail\u datesent”:“1367771147”中总是会出现对象未定义或Komplete lenght错误,“mail_betreff”:“mail betreff 023401”,“mail_text”:“das ist mail text”,“mail_read”:“0”,“mail_sender”:“robert”}另一个+1我认为这是处理此类数据的正确方法。是的,没错:但在php中创建更好的数组时,请仔细阅读它,因此我在JQuery.js或`{数据“{”id_mail:“0000000000 78”,“id_user:“00000001”,“mail_datesent:“1367771147”,“mail_betreff:“mail betreff 023401”,“mail_text:“das ist mail text”,“mail read:“0”,“mail_sender:“robert”}”另一个问题这里的问题到底是什么?预期的结果是什么?欢迎继续。请尝试写一篇可读的英语,并在正确的语法上表现出一定的努力。为我糟糕的英语发愁这里的问题到底是什么?预期的结果是什么?欢迎继续。请尝试写一篇可读性强的英语,并显示s我在纠正语法方面做了一些努力。对于我糟糕的英语来说,这是非常有效的:)使用json的工作不可能比php更难?有更好的方法吗?:)这是非常有效的:)使用json的工作不可能比php更难?有更好的方法吗?:)