0

我想用 PHP 和来自 mysql 的数据制作一个包含不同数量的 cols 的表。

为了使这成为可能,我认为一个简单的方法是首先打印一个包含行的表,然后在其中的行中创建一个包含随机列数的新表。我知道这不是推荐的做法,但我需要这种方式。

当我这样做时,所有单元格都得到了相同的值。

谁能帮帮我?

例子:

在此处输入图像描述

4

3 回答 3

0

我不认为你想要的是桌子。这可以使用 div 来完成,并将子 div 向左浮动:

html:

<div class="row">
  <div class="cell">
   ....
  </div>
  <div class="cell">
   ....
  </div>
  <div class="cell">
   ....
  </div>
  <div class="clear"></div>
</div>

<div class="row">
  <div class="cell">
   ....
  </div>
  <div class="cell">
   ....
  </div>
  <div class="cell">
   ....
  </div>
  <div class="cell">
   ....
  </div>
  <div class="cell">
   ....
  </div>
  as much divs ...
  <div class="clear"></div>
</div>

CSS:

.clear {
   clear:both;
}
.cell {
   width:100px;
   float:left;
}
于 2012-11-10T02:44:38.673 回答
0

使用一个行表并将它们放在一个带有 div 的框中,可能是另一种方法。像这样的东西:

<?php
// Array example
 $row = array('data1'  => '1',
              'data2'  => '2',
              'data3'  => '3',
              'data4'  => '4',
              'data5'  => '5',
              'data6'  => '6',
              'data7'  => '7',
              'data8'  => '8',
              'data9'  => '9',
              'data10' => '10');
?>

<style type="text/css">
  /*<![CDATA[*/
 .TablesBox {
  border: solid 2px #000000;
  width: auto;
  height: auto;
 }

 .Tables tr, .Tables td {
  width: auto;
  font-family: Verdana, sans-serif;
  margin: 1px;
 }

 .Tables td {
  border: solid 1px #000000;
  margin: 0;
 }

  /*]]>*/
</style>

<div class="TablesBox">
 <!--5 columns row-->
 <table class="Tables">
  <tr>
   <td><?php echo $row['data1']; ?></td>
   <td><?php echo $row['data2']; ?></td>
   <td><?php echo $row['data3']; ?></td>
   <td><?php echo $row['data4']; ?></td>
   <td><?php echo $row['data5']; ?></td>
  </tr>
 </table>
 <!--2 columns row-->
 <table class="Tables">
  <tr>
   <td><?php echo $row['data6']; ?></td>
   <td><?php echo $row['data7']; ?></td>
  </tr>
 </table>
 <!--3 columns row-->
 <table class="Tables">
  <tr>
   <td><?php echo $row['data8']; ?></td>
   <td><?php echo $row['data9']; ?></td>
   <td><?php echo $row['data10']; ?></td>
  </tr>
 </table>
 ...
</div>
于 2012-11-10T06:00:16.403 回答
0

请尝试下面给出的代码

<?php
  $rows = array();
  $rows[0][0] = 'A';
  $rows[0][1] = 'B';
  $rows[0][2] = 'C';
  $rows[1][0] = 'D';
  $rows[1][1] = 'f';
  $rows[2][0] = 'f';
  $rows[2][1] = 'k';
  $rows[2][2] = 'f';
  $rows[2][3] = 'j';
  $rows[3][0] = 'j';
  $total_rows = count($rows);

   echo "<table border='2'>";

    for($i = 0;$i < $total_rows; $i++){
    echo "<tr>";
      foreach($rows[$i] AS $col){
        echo "<td>";
            echo $col;
       echo "</td>";
      }
    echo  "</tr>";
   }
echo "</table>";

在这里first index of array is showing row number and second index showing column number of table

谢谢

于 2012-11-10T06:21:10.177 回答