2012-04-21 13 views
1

は、私がこれまでのところは良い、このPHP動的テーブル表示

$prices = array(); 

    /*some SQL coding */ 
print_r($prices); 
     Array 
    (
      [0] 
       [id] => 1 
       [title] => XT1 Comp 
       [young] => 50 
       [mid] => 50 
       [old] => 120 
      [1] 
       [id] => 2 
       [title] => HH3 Enginee 
       [young] => 150 
       [mid] => 170 
       [old] => 220 
    ) 

のようなものを見て、私のDBから返された多次元配列を持っています。しかしこれをダイナミックテーブルとしてどのように印刷するのが最適でしょうか?ちょっと立ち往生し、どんなヒントも大きく指定されています

私は誰かが助けてくれることを願っています。 - >これは私がそれらを得る方法です

id | title  | young| mid| old 
1 | XT1 Comp | 50 | 50 | 120 
and so one for each row/array index or line 

種類が アレックス

EDITについて:私はこのようなoutpusのために期待しています。

$result_array = array(); 
     while($line = mysql_fetch_array($result, MYSQL_ASSOC)) 
      { 
      $result_array[] = $line; 
     } 

     return $result_array 

答えて

2

あなたは出力に$pricesの各項目をPHPのforeachのを使用することができます。

<?php 
function queryResultAsTable($results) { 
    if(count($results) == 0) { 
     echo '<em>No rows returned</em>'; 
    } else { 
     echo '<table><thead><tr><th>'.implode('</th><th>', array_keys(reset($results))).'</th></tr></thead><tbody>'."\n"; 

     foreach($results as $result) { 
      echo '<tr><td>'.implode('</td><td>', array_values($result)).'</td></tr>'."\n"; 
     } 

     echo '</tbody></table>'; 
    } 
} 

queryResultAsTable($prices); 
+0

この小さな素敵な機能は、私が受け入れる人を私に変えさせました。恥ずべき私はあなたに両方の同じ量の信用を与えることはできません。 。 –

+0

@AlexanderGrosseありがとう:) –

+0

編集可能な入力フィールドの各行に各行を持たせるには、この関数をどのように編集できますか?それはすごい! –

2

ループを使用します。

foreach($prices as $row) { 
    echo '|' . $row['id'] . '|' . $row['title'] . '|' . $row['young'] . '|'; 
    echo '|' . $row['mid'] . '|' . $row['old'] . '|'; 
} 

それは各行を移動し、各列の値にアクセスできるようになります。

EDIT:

あなたはそれが以下を使用使用した後、結果を得るためにmysql_query();を使用している場合:

while($row = mysql_fetch_assoc($query_result)) { 
    // Same echo stuff here 
} 
+0

その仕事はありますか?各「配列名」を行として指定します。ですから、$ row = array index/lineとし、すべての値を仮定します。だから、一度それが "古い"の価値に達すると、 $行は終了し、存在すれば新しい行を開始します! –

+1

正確に。各行をループします。最後に終了すると、ループを終了します。 – gimg1

+0

ソートされ、thx man。なぜ私はその1つにこだわっていたのかわからない、p伝説! –

関連する問題