Android、Volley、SQL仅显示一条记录


Android, Volley,SQL Only one Record being displayed?

所以经过多次故障排除,我终于可以使用列表视图了。

基本上,我的表有3条记录,它们应该与id 1匹配。我想在我的android列表视图中显示这些,只显示1。当我进入时,我认为我的php是正确的myurl://retreiveData.php?id=1

所有3条记录都显示了,android应用程序如何只显示1个

我将在下面发布我的php,以及通过json数据循环的java的摘录

 <?php 
 if($_SERVER['REQUEST_METHOD']=='GET'){
   $id  = $_GET['id'];
   require_once('dbConnect.php');
   $sql = "SELECT * FROM Exercises WHERE id='".$id."'";
   $r = mysqli_query($con,$sql);
   while($res = mysqli_fetch_array($r)){
   $result = array();
   array_push($result,array(
   "muscle group"=>$res['muscle group'],
   "exercise"=>$res['exercise'],
  )
  );
   echo json_encode(array("result"=>$result));
  }
   mysqli_close($con);
  }

在PHP中将$result = array();行移动到while循环上方。

在每次迭代中,您都在创建一个新对象。在浏览器上,您可以看到,因为您在每次迭代中都打印值,但在while循环结束时,它将只有最后一个值。您可以通过在while循环之后回显$result的值来测试它。