表中的动态记录生成。没有正确显示数据

时间:2012-12-27 19:25:56

标签: php html mysql

我有以下代码,其中数据库表中的数据显示在表中。但是在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)); ?>

它会生成以下输出: My 3rs record's notification is empty, and 4th record is not displaying properly.

行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>

3 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

首先,我认为你的循环应该是一个简单的while循环而不是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 } ?>

答案 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