1

行の配列を返す mysql クエリがあります。PHPを垂直に使用してHTMLテーブルにデータを入力するにはどうすればよいですか? HTML テーブルで許可される列の数に制限はありません。

私の MYSQL クエリは、1 行あたり約 40 列を返します。

MYSQL row1 =>  10|11|12|13|14|15|16|17|18|19
      row2 =>  20|21|22|23|24|25|26|27|28|29
      row3 =>  30|31|32|33|34|35|36|37|38|39

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

   10 | 20 | 30
   11 | 21 | 31
   12 | 22 | 32
   13 | 23 | 33
   14 | 24 | 34
   15 | 25 | 35
   16 | 26 | 36
   17 | 27 | 37
   18 | 28 | 38
   19 | 29 | 39

これは私のコードで、何も表示されていません。

$values = array();

$sql = "SELECT * FROM `TABLE_NAME` ORDER BY `id` ASC LIMIT 0,12";
$result = $_db->query($sql);

$numrows = $_db->num_rows($result);

$c = 1;
while ($c <= $numrows)
{
    $values['col_'.$c] = array(); 
    $c++;
}

$r = 1;

while ($row = $_db->fetch_array($result)) 
{
    $values['col_'.$c][$r] = $row;

    $r++; 
}
echo "<table border='1'>";


for ($r = 1; $r <= $numrows; $r++) 
{
    echo "<tr>";
    for ($c = 1; $c <= sizeof($values['col_1']); $c++) 
    { 
        echo "<td>".$values['col_'.$c][$r]."</td>"; 
    }
    echo "</tr>" ;
}
echo "</table>" ;

私が間違っていることは何ですか?またはそれを簡単にする方法は?(whileループが多すぎると思います)

4

7 に答える 7