2016-08-24 13 views
1

データベース(MS SQL Server)からポジションを照会しようとしているオンラインジョブアプリケーションサイトがあります。PHPを使用して配列内のSQlサーバーデータベースからレコードを表示する方法

sqlsrv_fetch_arrayを使用してデータベースにクエリを実行しましたが、ここで配列内の位置リストを取得しています。

しかし、私はこの形式で配列を表示したいと思います。

<?php 

    $select = array (
    'Province1' => 
     array ( 
     'City1' => 
     array (
      ID => 'Position1', 
      ID => 'Position2', 
     )  
    ), 
    'Province2' => 
     array ( 
     'City2' => 
     array (
      ID => 'Position3', 
      ID => 'Position4', 
     ) 
    ), 
    ); 
?> 

データベース:!

$tsql = "SELECT * FROM Jobs"; 
$stmt = sqlsrv_query($conn, $tsql); 
while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_NUMERIC)) { 
    echo "".$row[0]."<br>\n"; 
    echo "".$row[1]."<br>\n"; 
    echo "".$row[2]."<br>\n"; 
    echo "".$row[3]."<br>\n"; 
} 

Please see the screen shot of the page

+0

sqlsrv_fetch_array($ query、SQLSRV_FETCH_BOTH)//試してください –

+1

↑このパラメータは既定値です。 – Phiter

+0

あなたのテーブルをxmlに変換し、このXMLをPHPに渡し、XMLを配列として解析します。 – gofr1

答えて

0

への基本的な方法:

[ここに画像の説明を入力] [1]

私は現在、このコードを使用していますこれは、結果配列の異なるレベルのグループ化をfクエリの結果から行をエッチしてください:

while ($row = sqlsrv_fetch_object($stmt)) { 
    $result[$row->Province][$row->City][$row->ID] = $row->Position; 
} 

結果に別のレベルのグループ化が必要になるたびに、ここに示したように別のレベルのキーを追加してください。

+0

質問を編集して、特にコードでコメントを使用するのではなく、詳細を追加してください。このように、他の問題の中でもそれを読むのは非常に難しいです。 –

+0

こんにちは、私はスタックオーバーフローの新機能です。私は正しい形式でコードを入れようとしていましたが、その形式は.sorryになりました – Donald

+0

それは問題ありません!間違いなく、少しの学習曲線があります。私は[ヘルプ](http://stackoverflow.com/editing-help#comment-formatting)は通常非常に有用であることがわかります。 –

関連する問題