0

わかりましたので、データベースから情報を引き出してテーブルに入れるスクリプトがあります。(完全なスクリプトはこの質問の最後にあります)

各 TR は標準 ID でエコーされます。これに関するecho "<tr class='task' id='task1'>";唯一の問題はtr、データベースから取得された新しい各行または各行に同じ ID が割り当てられるtask1ことです。名前はデータベースからの情報に基づいています。

だから私の質問は、テーブルの各trのID名を「自動生成」する方法はありますか? task1、task2、task3 などを見たいと思います。

完全なコードはここから始まります

<?php
$con=mysqli_connect("");
    // Check connection
    if (mysqli_connect_errno())
{
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

    $query = "SELECT * FROM affiliate_tasks WHERE username = '$_SESSION[username]'";

                if( isset($_POST['sort-selection']) && $_POST['sort-selection'] != 'all' ) 
                {
                    $query .= " AND status = '". $_POST['sort-selection']."';" ;
                }

                $result = mysqli_query($con, $query);

                echo "<table class='table table-message'>
                <tr class='heading'>
                <td class='cell-title'>Tasks</td> 
                <td class='cell-status hidden-phone hidden-tablet'>Status</td> 
                <td class='cell-time align-right'>Due Date</td>
                </tr>";

                while($row = mysqli_fetch_array($result))
                  {
                  echo "<tr class='task' id='task1'>";
                  echo "<td class='cell-ttle'>" . $row['task_name'] . "</td>";
                  echo "<td class='cell-status hidden-phone hidden-tablet'>"  . $row['status'] . "</td>";
                  echo "<td class='cell-time align=right'>" . $row['due_date'] . "</td>";
                  echo "</tr>";
                  }
                echo "</table>";

                mysqli_close($con);
            ?>
4

1 に答える 1

1

テーブル行に一意の id 列がある場合、それがここに最適です。以下を使用できます。

echo "<tr class='task' id='task-" . $row['id'] . "'>";

そうでない場合で、連番が必要な場合は、次のような変数を使用します。

$i = 0;
while($row = mysqli_fetch_array($result)) {
  echo "<tr class='task' id='task-" . ++$i . "'>";
  // Rest of your lines ...
}
于 2013-06-08T04:12:05.317 に答える