我有一个关于JSON PHP多值的问题

我有一个关于JSON PHP多值的问题,php,json,Php,Json,我想选择更多的数据库值(我已经选择了),并将其转换为JSON 我都试过了 php 他看起来像这样: {"results":[{"id":"1","text":"Pompiliu","level":"7"} {"id":"11","text":"Pompiliu1","level":"100"}]} 但两者之间一定是这样 {"id":"1","text":"Pompiliu","level":"7"}, {"id":"11","text":"Pompiliu1","level":"100"}

我想选择更多的数据库值(我已经选择了),并将其转换为JSON

我都试过了

php

他看起来像这样:

{"results":[{"id":"1","text":"Pompiliu","level":"7"}
{"id":"11","text":"Pompiliu1","level":"100"}]}
但两者之间一定是这样

{"id":"1","text":"Pompiliu","level":"7"}, 
{"id":"11","text":"Pompiliu1","level":"100"}
什么时候会有3个结果

{"id":"1","text":"Pompiliu","level":"7"},
{"id":"11","text":"Pompiliu1","level":"100"},
{"id":"12","text":"Pompiliu2","level":"100"}

使用
[]
添加到数组,然后使用json\u编码。
不要试图自己构建json字符串

if ($rezultatul->num_rows > 0) {
    while($row = $rezultatul->fetch_assoc()) {
        $name = $row["name"];

        $arr[] = array('id' => $row["id"], 'text' => $row["name"], 'level' => $row["Level"]);
    }
}
echo json_encode(["results" => $arr]);

我不明白,你得到的是json数据?那么这有什么错呢?逗号在这些表之间不起作用!你很容易受到攻击。研究如何使用而不是直接在查询中使用完全未替换的用户数据。@Mark_Ed-由于数组中的对象之间没有逗号,因此它们会得到无效的json数据。@MagnusEriksson公平地说,这在问题的原始修订版中很难发现。
if ($rezultatul->num_rows > 0) {
    while($row = $rezultatul->fetch_assoc()) {
        $name = $row["name"];

        $arr[] = array('id' => $row["id"], 'text' => $row["name"], 'level' => $row["Level"]);
    }
}
echo json_encode(["results" => $arr]);