2016-03-23 11 views
0

多くのトラブルシューティングの後、私は最終的に私のリストビューの作業を得た。Android、Volley、SQL 1つのレコードのみ表示されますか?

私のテーブルには、id 1と一致する必要がある3つのレコードがあります。これらをアンドロイドのリストビューに表示するには、1が表示されます。私は私が myurl入力したときのように私のphpが正しいと仮定します?//retreiveData.phpをID = 1

すべて3つのレコードはアンドロイドアプリケーションは1つだけ

を表示する方法を、これまで、表示されて、私は以下の私のPHPを掲載します、およびPHPでのwhileループ上記

<?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); 
    } 

答えて

0

移動ライン$result = array();をJSONデータをループJavaからの抽出物。

すべての繰り返しで、新しいオブジェクトを作成しています。ブラウザでは、各繰り返しで値を表示するので、ループの最後にはwhileの最後に値が表示されるため、最後の値しか表示されません。 whileループの後に$resultの値をエコーすることでテストできます。

+0

ありがとう、これは意味があり、私は "echo json_encode(array(" result "=> $ result));" whileループでは、それを外側に移動するだけでなく、ループ上の配列ラインを動かしてこれを固定します。お返事ありがとうございます。 – uwotm8

+0

お寄せいただきありがとうございます。あなたの問題を解決した場合、正しい答えを受け入れることができます。将来の訪問者に役立つでしょう。 –

関連する問題