gpt4 book ai didi

php - MySQL 多行的 JSON 编码

转载 作者:行者123 更新时间:2023-11-30 00:53:51 25 4
gpt4 key购买 nike

我正在努力通过 PHP(服务器端)和 jQuery(前端)通过一个简单的搜索框将多个 MySQL JSON 行输出到 HTML 表。我已成功将一行 JSON 解析到表中,但现在需要容纳多行 JSON 数据。

搜索页面上的 HTML 表格如下所示:

ARTIST | TITLE | LOCATION 
U2 | One | Ireland
Foals | Miami | UK

传递给它的 JSON 文件使用类似的标题:

{"ARTIST":"Katy Perry","LOCATION":"United States", "TRACKTITLE":"Roar"}

我已经研究了一段时间的代码,合并数组来循环数据。它可以正确地循环遍历 MySQL 行并成功以 JSON 格式发送多行数据(我已经在 Firebug 中解码了我的搜索页面)。问题是我的 jQuery 文件无法将其放入 HTML 表中,导致出现空白页面。我已经尝试了之前 Stackoverflow 问题中的各种数组方法,但无法完全正常工作,每个返回结果都返回“ARTIST”、“TRACKTITLE”和“LOCATION”字段

从 PHP 文件中提取:

$result = mysql_query($sql);
$data = array();
while ($array = mysql_fetch_assoc($result)) {
$data[] = $array;
}
echo json_encode($data);

编辑以包含 jQuery 摘录和更具体的问题:

function(data) {
var sentData=JSON.parse(data)
for (var i = 0; i < sentData.ARTIST.length; ++i)
{
tr = $('<tr/>');
tr.append("<td>" + sentData.ARTIST + "</td>");
tr.append("<td>" + sentData.TRACKTITLE + "</td>");
tr.append("<td>" + sentData.LOCATION + "</td>");
$('#multiple').append(tr);
}
});

如何使用 JSON.parse 方法仅解析每个“ARTIST”、“TRACKTITLE”和“LOCATION”结果的相应值?这是完整返回的 JSON 字符串:

[{"ARTIST":"Katy Perry","TRACKTITLE":"Roar","LOCATION":"United States"}, {"ARTIST":"U2","TRACKTITLE":"One","LOCATION":"Ireland"}]

最佳答案

试试这个,我采用了您提供的 JavaScript 并进行了如下更改。 (另请参阅底部的 jsfiddle)

var sentData=JSON.parse('{"ARTIST":[["Katy Perry"], ["U2"]],"LOCATION":[["United States"], ["Ireland"]],"TRACKTITLE":[["Roar"], ["One"]]}')
for (var i = 0; i < sentData.ARTIST.length; ++i)
{
tr = $('<tr/>');
tr.append("<td>" + sentData.ARTIST[i] + "</td>");
tr.append("<td>" + sentData.TRACKTITLE[i] + "</td>");
tr.append("<td>" + sentData.LOCATION[i] + "</td>");
$('#multiple').append(tr);
}

在这里查看 jsfiddle 的工作情况。 http://jsfiddle.net/jspatel/Ya82B/

关于php - MySQL 多行的 JSON 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20749192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com