0

我有以下代码,其中数据库表中的数据显示在表中。但是在 2-3 条记录之后,它无法正确显示记录。

这是代码:

<tr>
      <?php do { ?>
        <td>&nbsp;</td>
        <td><?php echo $row_Recordset1['notification']; ?></td>
        <td><?php echo $row_Recordset1['online_date']; ?></td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
        </tr>
        <?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>

它生成以下输出: 我的第 3 条记录的通知是空的,第 4 条记录显示不正确。

行 HTML 输出为:

<form id="form1" name="form1" method="post" action="">
  <table width="900" align="center" cellpadding="0" cellspacing="0">
    <tr>
      <td rowspan="6">&nbsp;</td>
      <td colspan="5"><div align="center">Active Notifications </div></td>
      <td rowspan="6">&nbsp;</td>
    </tr>
    <tr>
      <td colspan="5">&nbsp;</td>
    </tr>
    <tr>
      <td>No.</td>
      <td>Notifications</td>
      <td>Online Date </td>
      <td colspan="2">Transactions</td>
    </tr>
          <tr>
        <td>&nbsp;</td>
        <td>Our New destinations are Countries.</td>
        <td>2012-12-27</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>
            <tr>
        <td>&nbsp;</td>
        <td>abcdefgh</td>
        <td>2012-12-27</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>
            <tr>
        <td>&nbsp;</td>
        <td>Hi</td>
        <td>2012-12-27</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>
            <tr>
        <td>&nbsp;</td>
        <td>hello</td>
        <td>2012-12-27</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
    </tr>
            <tr>
      <td colspan="5">&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
    </tr>
  </table>
</form>
4

3 回答 3

1

你的<tr>标签在循环之外,而结束的标签在里面。

于 2012-12-27T19:29:32.020 回答
1

首先,我认为您的循环应该是一个普通while循环而不是 a do ... while,除非您之前有一些代码正在获取第一条记录。

其次,你的<tr>标签在循环之外,它应该在里面:

  <?php while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)) { ?>
    <tr>
    <td>&nbsp;</td>
    <td><?php echo $row_Recordset1['notification']; ?></td>
    <td><?php echo $row_Recordset1['online_date']; ?></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
   <?php } ?>
于 2012-12-27T19:29:52.857 回答
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

于 2012-12-27T19:31:09.027 回答