PHP json_encode () в цикле while

Я пытаюсь использовать json_encode() в цикле while, получая результаты базы данных. Вот мой код:

 <? $database = sqlite_open("thenew.db", 0999, $error); if(!$database) die($error); $query = "SELECT * FROM users"; $results = sqlite_query($database, $query); if(!$results) die("Canot execute query"); while($row = sqlite_fetch_array($results)) { $data = $row['uid'] . " " . $row['username'] . " " . $row['xPos'] . " " . $row['yPos']; } echo json_encode(array("response"=>$data)); sqlite_close($database); ?> 

Результатом этого является

{"response": "lastUserID lastUser lastXPos lastYPos"}

Я хочу, чтобы это было …

{"response": ["1 Alex 10 12", "2 Fred 27 59", "3 Tom 47 19"]}

и т.п.

Поэтому я хочу, чтобы функция json_encode() помещала ВСЕ пользователей в массив, а не последнюю. Как мне это сделать? благодаря

Пытаться:

 <? $database = sqlite_open("thenew.db", 0999, $error); if(!$database) die($error); $query = "SELECT * FROM users"; $results = sqlite_query($database, $query); if(!$results) die("Canot execute query"); $data = array(); while($row = sqlite_fetch_array($results)) { $data[] = $row['uid'] . " " . $row['username'] . " " . $row['xPos'] . " " . $row['yPos']; } echo json_encode(array("response"=>$data)); sqlite_close($database); ?> 

Изменить это

 while($row = sqlite_fetch_array($results)) { $data = $row['uid'] . " " . $row['username'] . " " . $row['xPos'] . " " . $row['yPos']; } 

в

 $data = array(); while($row = sqlite_fetch_array($results)) { $data[] = $row['uid'] . " " . $row['username'] . " " . $row['xPos'] . " " . $row['yPos']; } 

Нажимайте каждый пользователь на массив:

 $data = array(); while($row = sqlite_fetch_array($results)) { $data[] = $row['uid'] . " " . $row['username'] . " " . $row['xPos'] . " " . $row['yPos']; } echo json_encode(array("response"=>$data));