2016-04-28 13 views
0

私のオンラインデータベースからデータベースを取得する必要のあるアンドロイドプロジェクトがあります。私はAndroid用のコードを開発していますが、今では私のオンラインデータベースを取得するためにPHPコードがついています。PHPでオブジェクト内のオブジェクトをデータベース内にフェッチできません

さて、私はデータベースを取得するためにJSONを使用していますので、私はこの1つのようなアンドロイドの側でコード:

JSONArray j = new JSONArray(total); 
        JSONObject Obj = j.getJSONObject(i); 
       item.setId(Obj.getString(JF_ID)); 
       item.setTitle(Obj.getString(JF_TITLE)); 


       item.setAddress(Obj.getString(JF_ADDRESS)); 

       item.setTelephoneNumber(Obj.optString(JF_TELEPHONE, NO_DATA_FOUND)); 

       item.setEmailAddress(Obj.optString(JF_EMAIL, NO_DATA_FOUND)); 
       item.setWebUrl(Obj.optString(JF_WEB, NO_DATA_FOUND)); 
       item.setFacebookUrl(Obj.optString(JF_FACEBOOK, NO_DATA_FOUND)); 

       item.setLatitude(Obj.optDouble(JF_LATITUDE, NULL_LOCATION)); 
       item.setLongitude(Obj.optDouble(JF_LONGITUDE, NULL_LOCATION)); 
       try { 
        item.setRating(Float.parseFloat(Obj.optString(JF_RATING, NO_DATA_FOUND))); 
       } catch (NumberFormatException e) { 
        item.setRating(0.0f); 
       } 

       try { 
        item.setRatingCount(Integer.parseInt(Obj.optString(JF_RATING_COUNT, NO_DATA_FOUND))); 
       } catch (NumberFormatException e) { 
        item.setRatingCount(0); 
       } 

       item.setTagLine(Obj.optString(JF_TAG_LINE, NO_DATA_FOUND)); 
       item.setDescription(Obj.optString(JF_DESCRIPTION, NO_DATA_FOUND)); 
       item.setVerification(Obj.optString(JF_VERIFICATION, NO_DATA_FOUND).equals("1") ? true : false); 


       JSONArray imgArr = Obj.getJSONArray("thumbImage"); 
       String[] imageThumb = new String[imgArr.length()]; 

あなたがそこに見ることができ、私のパターンは、第1配列を取得し、オブジェクトと最後のフェッチであります配列を再度フェッチします。言い換えれば

、私は私の結果は、この例のようになりたい:

["arrayA":{"id":"1", "year":"2016","thumbnail":["a.jpg","b.jpg","c.jpg"]}] 

は、ここで問題です、私は私がしたいパターンを返すサーバー側のPHPコードを作成することはできません。それは常にArray> Objectをretruningしているだけで、Objectの後ろにArrayはありません。ここで

は私がこれまでに記述PHPのコードです:

$qu=mysqli_query($con,"select * from car_rental where rental_id='1'"); 
while ($row = mysqli_fetch_assoc($qu)) { 
    $res [] =array($row, 
     $thumbImage[] = 
     array( "t1"=>$row['thumbImage1'], 
       "t2"=>$row['thumbImage2'], 
       "t3"=>$row['thumbImage3'] 
      )); 



} 
$json["thumb"] = $res; 

echo json_encode($json); 

私を助けて習得してください。おかげさまで あなたが言及したよう

答えて

0

あなたは

["arrayA":{"id":"1", "year":"2016","thumbnail":["a.jpg","b.jpg","c.jpg"]}] 

のような出力は、このPHPコードの代わりに

$qu=mysqli_query($con,"select * from car_rental where rental_id='1'"); 

$res = array(); 
$singleRecordSet = array(); 

while ($row = mysqli_fetch_assoc($qu)) { 

    $singleRecordSet = $row; 
    $multiRecordSet = array('thumb'=>array(
           "t1"=>$row['thumbImage1'], 
           "t2"=>$row['thumbImage2'], 
           "t3"=>$row['thumbImage3'] 
         )); 
    $res = array_merge($singleRecordSet,$multiRecordSet);    
} 

$json["arrayA"] = $res; 

echo json_encode($json); 
を試してみてほしいです
関連する問題