2016-05-07 10 views
0

以下の形式でMySqlデータベースからデータを取得する方法を教えてください。PHPのカラム名を持たないSQLdataを取得する

さて、私は

$sql="SELECT c.ad_id FROM `category_rel` c INNER JOIN tbl_category_master d ON c.category_id= d.fld_category_id WHERE d.fld_category_name IN ($category)"; 
$result1=$con->query($sql); 
while ($row = mysqli_fetch_assoc($result1)) { 
    $output[] = $row; 
     } 
$ids=json_encode(array($output)); 

形式以下の結果のデータを取得しています:それは付属してはならない

["2","11","28","62"] 


[[{"ad_id":"2"},{"ad_id":"11"},{"ad_id":"28"},{"ad_id":"62"},{"ad_id":"64"}]]

しかし、私は以下の形式にしたいです列名

$sql="SELECT c.ad_id FROM `category_rel` c INNER JOIN tbl_category_master d ON c.category_id= d.fld_category_id WHERE d.fld_category_name IN ($category)"; 
$result1=$con->query($sql); 
while ($row = mysqli_fetch_assoc($result1)) { 
    $output[] = $row['ad_id']; 
     } 
$ids=json_encode($output); 

よろしく:

答えて

1

は、アレイ()関数を削除$output[] = $row['ad_id'];代わりに$output[] = $row;

[編集] してみてください。

+0

彼女はデータを 'assoc'としました。 –

+0

いいえ、それは動作しません – Priyanka

+0

私は 'mysql_fetch_assoc'を使用して表示されないので、私はポストを更新しますか? –

0

あなたはループが、それを使用している間から、それを実行したい場合:

$sql="SELECT c.ad_id FROM `category_rel` c INNER JOIN tbl_category_master d ON c.category_id= d.fld_category_id WHERE d.fld_category_name IN ($category)"; 
while ($row = mysqli_fetch_assoc($result1)) { 
    $output[] = $row['ad_id']; //may be this will help Not sure the structure 
} 
$ids = json_encode(array($output)); 

あなたは出力配列からそれを必要とする場合は、単にこれを使用する:

$json = '[[{"ad_id":"2"},{"ad_id":"11"},{"ad_id":"28"},{"ad_id":"62"},{"ad_id":"64"}]]'; 

$arr = json_decode($json, true); 


$arr = array_column($arr[0], 'ad_id'); 

echo '<pre>'; 
print_r($arr); 

結果:

Array 
(
    [0] => 2 
    [1] => 11 
    [2] => 28 
    [3] => 62 
    [4] => 64 
) 
+0

私の作品ではありませんが、私は['2'、 '11'、 '28'、 '62'、 '64']このフォーマットを使用したいと思います... IN節のSQlステートメント – Priyanka

+0

ですので、 'implode'関数を使用することができます。あなたはすでに他の答えを受け入れるので、運が最高です。 –

関連する問題