我有一個帶有 ajax 'POST' 方法的網(wǎng)站,該方法將數(shù)據(jù) ID 發(fā)送到 php 文件。根據(jù)收到的 id,從數(shù)據(jù)庫接收適當?shù)?MySQL 查詢并將其放入 JSON 數(shù)組。存檔.php:if(isset($_POST["id"])){ //data received from the html POST method $id = $_POST["id"]; if(is_numeric($id) == TRUE){ $query="SELECT * FROM TestDataBase.usr WHERE idusr =" . $id; $result=mysqli_query($conn, $query); }else if(is_numeric($id) == FALSE && $id != ""){ $query="SELECT * FROM TestDataBase.usr WHERE INSTR(name,'" . $id ."')"; $result=mysqli_query($conn, $query); } $i=0; while($row = mysqli_fetch_array($result)){ $data["num"] = $i; $i += 1; $data["idusr"] = $row["idusr"]; $data["name"] = $row["name"]; $data["surname"] = $row["surname"]; } echo json_encode($data);}使用 MySQLINSTR方法,我將所有包含的查詢解析id為一個$data數(shù)組,然后將其編碼為 json,但由于某種原因,只有表中的最后一個查詢被發(fā)送回 html 文件。如何將多個查詢而不是一個添加到 json 數(shù)組中?謝謝!
1 回答

智慧大石
TA貢獻1946條經(jīng)驗 獲得超3個贊
要根據(jù)結(jié)果創(chuàng)建二維數(shù)組,您必須將數(shù)組添加到數(shù)組:
$data=[]; // <-- create empty array to hold the results
while($row = mysqli_fetch_array($result)){
//NOW push all elements in an array into $data:
$data[]= // <-- push new value in $data = array
[
'num' => $i,
'idusr' => $row['idusr'],
'name' => $row['name'],
'surname' => $row['surname']
];
$i += 1;
}
echo json_encode($data);
- 1 回答
- 0 關(guān)注
- 185 瀏覽
添加回答
舉報
0/150
提交
取消