2016-07-30 7 views
0

私はMySQLデータベースからデータを取得し、その周辺に変数を追加してからJSON形式で表示する必要があります。PHP - Json_encodeデータベース選択に変数を追加してJsonに渡す方法は?

出力は次のようになります

{"items":[{"cinemaname":"Cinema name","logo":"upload/cinemaname.png","distance":"103"},{"cinemaname":"Cinema name 2","logo":"upload/cinemaname2.png","distance":"23"}]} 

テーブルは距離から構成されない、距離が計算され、コードに手動で追加されなければなりません。

コード:

$result = mysqli_query($con,"some query here"); 

while($rowm = mysqli_fetch_array($result)) 
{ 
    $all[]= $rowm; 
} 

$alldata = array('items'=>$all); 
header('Content-Type: application/json; charset=utf-8'); 
echo json_encode($alldata); 
} 

I出力までの距離を追加することができますどのように?

私はこれを試してみました:

$result = mysqli_query($con,"some query here"); 

while($rowm = mysqli_fetch_array($result)) 
{ 
    //here is calculation of a distance = $distance 

    $all[]= $rowm.'distance=>'.$distance;  
} 

$alldata = array('items'=>$all); 
header('Content-Type: application/json; charset=utf-8'); 
echo json_encode($alldata); 
} 

は現在、スクリプトはこれを出力します

{"items":[{"cinemaname":"Cinema name","logo":"upload/cinemaname.png"},{"cinemaname":"Cinema name 2","logo":"upload/cinemaname2.png"}]} 

私はそれは次のようになりたいのですが:

{"items":[{"cinemaname":"Cinema name","logo":"upload/cinemaname.png","distance":"103"},{"cinemaname":"Cinema name 2","logo":"upload/cinemaname2.png","distance":"23"}]} 

答えて

1

$rowmは配列でありますしたがって、.による文字列の連結を使用しても機能しません!これを試してください:

$rowm['distance'] = $distance; 
$all[] = $rowm; 

私はこれがあなたを助けてくれることを願っています。

+0

は完全に働きました!ありがとうIsmail!あなたは素晴らしいです:)) –

+0

この問題で私を助けてください:) http://stackoverflow.com/questions/39184358/php-get-data-from-database-compare-it-to -variable-and-sort-by-less-value –

0
$result = mysqli_query($con,"SELECT * FROM `items`"); 

while($rowm = mysqli_fetch_assoc($result)) 
{ 
    $all['items'][] = array_values($rowm); 
} 

header('Content-Type: application/json; charset=utf-8'); 
echo json_encode($all); 
die(); 
0
$result = mysqli_query($con,"some query here"); 

while($rowm = mysqli_fetch_array($result)) 
{ 
    $distance={calc of distance}; 
    $all[]=array(
      "cinemaname"=>$rowm['name'] 
     , "logo"=>$rowm['logo'] 
     , "distance"=>$distance); 
} 
$alldata = array('items'=>$all); 
header('Content-Type: application/json; charset=utf-8'); 
echo json_encode($alldata); 
関連する問題