如何使用php自动生成rowspan


How to automatically generate rowspan using php

在这段代码中,除了我无法在Internal Grade单元格中生成rowspan之外,一切都很完美。这一行<td rowspan="<?php echo $cols;?>">隐藏了底部边界,而我期望每次代码生成行时跨越行。谢谢您的输入,抱歉使用了mysql()函数。我是新手。

<?php $cols=mysql_num_rows($grds);  ?>
<table>
<?php do{ ?>
<tr>
<td>&nbsp;</td>
//This hide the bottom border
<td rowspan="<?php echo $cols;?>">Internal<br />Grades</td>
<td colspan="2">&nbsp;<?php echo strtoupper($row_grds['grade_name']); ?></td>  
<td><?php echo strtoupper($row_grds['igrade']); ?></td>
<?php } while ($row_grds=mysql_fetch_assoc($grds)); ?>
</tr>
</table>

输出如下所示:输出在这里

php生成的代码是:

<table>
   <tr>
  <td>&nbsp;</td>
  <td rowspan="1">&nbsp;</td>// A
  <td colspan="2">&nbsp;RHYMES</td>  
  <td align="center">B</td>
   </tr>
      <tr>
  <td>&nbsp;</td>
  <td rowspan="2">&nbsp;</td>//B
  <td colspan="2">&nbsp;CONVERSATION</td>  
  <td align="center">A</td>
   </tr>
</table>

我想合并A和B

期望输出:

<table>
  <tr>
    <td>&nbsp;</td>
    <td rowspan="2">&nbsp;Internal<br /> Grade</td>
    <td colspan="2">&nbsp;RHYMES</td>  
    <td align="center">B</td>
    </tr>
        <tr>
    <td>&nbsp;</td>
      <td colspan="2">&nbsp;CONVERSATION</td>  
    <td align="center">A</td>
  </tr>
</table>

你可以做类似的事情:

<table>
<?php $row_grds = mysql_fetch_assoc($grds); ?>
   <tr>
     <td>&nbsp;</td>
     <td rowspan="<?=$cols;?>">Internal<br />Grades</td>
     <td colspan="2">&nbsp;<?=strtoupper($row_grds['grade_name']);?></td>  
     <td><?=strtoupper($row_grds['igrade']);?></td>
    </tr>
<?php while ($row_grds=mysql_fetch_assoc($grds)): ?>
   <tr>
     <td>&nbsp;</td>
     <td colspan="2">&nbsp;<?=strtoupper($row_grds['grade_name']);?></td>  
     <td><?=strtoupper($row_grds['igrade']);?></td>
    </tr>
<?php endwhile; ?>

它并不完美,但你正在使用mysql_fetch_assoc,它本身也不完美:D