sql — добавление столбца autonumber в таблицу php, которая читает из mysql

Я пытаюсь добавить столбец перед моим первым столбцом, который начинает нумерацию каждой записи, начиная с 1. Я пытался добавить автоинкремент к этой строке эхо «». $ row [‘ss’]. «»;, но это, похоже, не хочет работать. Есть идеи, как это сделать?

Мой код выглядит так:

$result = mysqli_query($con,"SELECT * FROM `results` WHERE Event='100' AND Gender='M' ORDER BY Performance ASC");

echo "<table border='0'>
<tr>
<th align='left'>Pos</th>
<th align='left'>Event</th>
<th>Performance</th>
<th>Wind</th>
<th>Place</th>
<th align='left'>Name</th>
<th align='left'>Surname</th>
<th>Age</th>
<th>Team</th>
<th>Meet</th>
<th>Date</th>
</tr>";

while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row['ss'] . "</td>";
echo "<td>" . $row['Event'] . "</td>";
echo "<td>" . $row['Performance'] . "</td>";
echo "<td>" . $row['Wind'] . "</td>";
echo "<td>" . $row['Pos'] . "</td>";
echo "<td width='100' align='left'>" . $row['Surname'] . "</td>";
echo "<td Width='100'>" . $row['Name'] . "</td>";
echo "<td>" . $row['Age'] . "</td>";
echo "<td>" . $row['Team'] . "</td>";
echo "<td>" . $row['Meet'] . "</td>";
echo "<td>" . $row['Date'] . "</td>";
echo "</tr>";
}
echo "</table>";

mysqli_close($con);
?>

-1

Решение

Добавьте эту строку в заголовок

<th align='left'>#</th>

А вот php код

$count = 1;
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $count . "</td>";
echo "<td>" . $row['ss'] . "</td>";
echo "<td>" . $row['Event'] . "</td>";
echo "<td>" . $row['Performance'] . "</td>";
echo "<td>" . $row['Wind'] . "</td>";
echo "<td>" . $row['Pos'] . "</td>";
echo "<td width='100' align='left'>" . $row['Surname'] . "</td>";
echo "<td Width='100'>" . $row['Name'] . "</td>";
echo "<td>" . $row['Age'] . "</td>";
echo "<td>" . $row['Team'] . "</td>";
echo "<td>" . $row['Meet'] . "</td>";
echo "<td>" . $row['Date'] . "</td>";
echo "</tr>";
//other code
$count=$count+1;
}
1

Другие решения

Лучшим решением было бы использовать переменный счетчик для «нумерации» ваших строк:

$counter = 1;

while($row = mysqli_fetch_array($result))
echo "<td>" . $counter . "</td>";
$counter++;
}

Это правильный способ сделать это, так как если это ss столбец — автоинкремент mysql, тогда ваши строки не будут пронумерованы SORT скорее из того порядка, в котором они были вставлены в базу данных, независимо от того, какую сортировку вы применяете.

0

Попробуй поменять fetch_array с FETCH_ASSOC

0
По вопросам рекламы [email protected]