2

解決済み

完璧に動作します!これが私の最終的なコードです:

<table>
  <thead>
    <tr>
      <?php
      $row = mysql_fetch_assoc($result);
            foreach ($row as $col => $value) {
                echo "<th>";
                echo $col;
                echo "</th>";
            }
      ?>
      <th>Edit</th>
    </tr>
  </thead>
  <tbody>
    <?php
  // Write rows
  mysql_data_seek($result, 0);
    while ($row = mysql_fetch_assoc($result)) {
        ?>
    <tr>
      <?php         
    foreach($row as $key => $value){
        echo "<td>";
        echo $value;
        echo "</td>";
    }
    ?>
      <td><button id="edit_project_button(<?php echo $row['ID']; ?>)" class="edit-project-button edit button" onclick="editproject(<?php echo $row['ID']; ?>)">Edit</button></td>
    </tr>
    <?php } ?>
  </tbody>
</table>

mysql_fetch 関数を適切に使用して、HTML テーブルをエコーアウトしたいと考えています。mysql テーブルの列名を含むスレッドと、mysql テーブルの結果セットを含むtbodyを作成する予定です。SQL クエリは、デフォルトの制限が設定されたテーブルからいくつかの列を選択します。

問題:テーブル データの最初の行が印刷されないようで、他のすべてが表示されます (レコード #1 がありません)

各 内にエコーされた列名を表示し、最初のレコードをスキップして、2行目以降を正常にエコーします。例えば:

| id | firstname | lastname | date_start | date_end   | clientid | members | edit          |
|  2 | Cal       | Clark    | 2012-12-12 | 2012-12-12 | 22       | Rob     | (edit button) |
|  3 | Rob       | Robin    | 2012-12-12 | 2012-12-12 | 33       | Cal     | (edit button) |

phpmyadmin のクエリから最初のレコードが表示されることは 100% 確信しています。

これが私のコードです:

<table>
  <thead>
    <tr>
      <?php
        $row = mysql_fetch_assoc($result);
            foreach ($row as $col => $value) {
                echo "<th>";
                echo $col;
                echo "</th>";
            }

      ?>
      <th>Edit</th>
    </tr>
  </thead>
  <?php
  // Write rows
  while ($row = mysql_fetch_array($result)) {
    ?>
  <tr>
    <td><?php echo $row[0]; ?></td>
    <td><?php echo $row[1]; ?></td>
    <td><?php echo $row[2]; ?></td>
    <td><?php echo $row[3]; ?></td>
    <td><?php echo $row[4]; ?></td>
    <td><?php echo $row[5]; ?></td>
    <td><?php echo $row[6]; ?></td>
    <td><button id="edit_project_button(<?php echo $row[0]; ?>)" class="edit-project-button edit button" onclick="editproject(<?php echo $row[0]; ?>)">Edit</button></td>
  </tr>
  <?php } ?>
</table>

私は今、とても忘れているように感じます=/

4

1 に答える 1

7

最初にデータを巻き戻してください!!

mysql_data_seek($result, 0);
while ($row = mysql_fetch_array($result)) {
...
于 2012-12-12T12:23:01.107 に答える