我有以下代码,其中数据库表中的数据显示在表中。但是在2-3条记录之后,它没有正确显示记录。
这是代码:
<tr>
<?php do { ?>
<td> </td>
<td><?php echo $row_Recordset1['notification']; ?></td>
<td><?php echo $row_Recordset1['online_date']; ?></td>
<td> </td>
<td> </td>
</tr>
<?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
它会生成以下输出:
行HTML输出是:
<form id="form1" name="form1" method="post" action="">
<table width="900" align="center" cellpadding="0" cellspacing="0">
<tr>
<td rowspan="6"> </td>
<td colspan="5"><div align="center">Active Notifications </div></td>
<td rowspan="6"> </td>
</tr>
<tr>
<td colspan="5"> </td>
</tr>
<tr>
<td>No.</td>
<td>Notifications</td>
<td>Online Date </td>
<td colspan="2">Transactions</td>
</tr>
<tr>
<td> </td>
<td>Our New destinations are Countries.</td>
<td>2012-12-27</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td>abcdefgh</td>
<td>2012-12-27</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td>Hi</td>
<td>2012-12-27</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td>hello</td>
<td>2012-12-27</td>
<td> </td>
<td> </td>
</tr>
<tr>
<td colspan="5"> </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</form>
答案 0 :(得分:1)
你的<tr>
标签在循环之外,而结束的标签在里面。
答案 1 :(得分:1)
首先,我认为你的循环应该是一个简单的while
循环而不是do ... while
,除非你之前有一些代码获得第一条记录。
其次,您的<tr>
标记位于循环之外,它应位于其中:
<?php while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)) { ?>
<tr>
<td> </td>
<td><?php echo $row_Recordset1['notification']; ?></td>
<td><?php echo $row_Recordset1['online_date']; ?></td>
<td> </td>
<td> </td>
</tr>
<?php } ?>
答案 2 :(得分:0)
你没有正确显示是什么意思?从HTML的角度或数据的角度来看?如果从html的角度来看,你是在循环外打开tr,但是你在循环中关闭它。基本上,您的结构如下:tr td td td td /tr td td td td /tr
而不是tr td td td td /tr tr td td td td \tr