我已经成功制作了一个工作完全正常的记分板,但有一个小问题。我总是将我的“名次”数字加 1。如果两个竞争对手有相同的结果,他们应该有相同的“名次”。
我现在的代码(只有 PHP 我在表格中回显它):
<?php
while( $row = mysql_fetch_assoc( $u10z ) ){
print "<tr>";
print "<td>" . $i1 . "</td>";
print "<td>" . $row['ime'] . "</td>";
print "<td>" . $row['priimek'] . "</td>";
print "<td>" . $row['klub'] . "</td>";
print "<td>" . $row['drzava'] . "</td>";
print "<td>" . $row['vrh'] . "</td>";
print "<td>" . $row['vrhPoskus'] . "</td>";
print "<td>" . $row['bonus'] . "</td>";
print "<td>" . $row['bonusPoskus'] . "</td>";
print "</tr>";
$i1++;
}
?>
如您所见 $i1
是一个“地点”计数器。
如果您查看第二个表,first(1)
和 second(2)
竞争对手应该都在 first(1)
排名,因为他们都有相同的分数。
还有eighth(8)
和ninth(9)
竞争对手应该都在 eighth(8)
地点。
编辑:
我现在正在使用下面评论的代码,但我有一个小问题。数字发生了变化。
<?php
$pre_vrh = false;
$pre_vrhPoskus = false;
$pre_bonus = false;
$pre_bonusPoskus = false;
while( $row = mysql_fetch_assoc( $u10z ) ){
print "<tr>";
print "<td>" . $i1 . "</td>";
print "<td>" . $row['ime'] . "</td>";
print "<td>" . $row['priimek'] . "</td>";
print "<td>" . $row['klub'] . "</td>";
print "<td>" . $row['drzava'] . "</td>";
print "<td>" . $row['vrh'] . "</td>";
print "<td>" . $row['vrhPoskus'] . "</td>";
print "<td>" . $row['bonus'] . "</td>";
print "<td>" . $row['bonusPoskus'] . "</td>";
print "</tr>";
if ($pre_vrh != $row['vrh'] || $pre_vrhPoskus != $row['vrhPoskus'] || $pre_bonus != $row['bonus'] || $pre_bonusPoskus != $row['bonusPoskus']) {
$i1++;
}
$pre_vrh = $row['vrh'];
$pre_vrhPoskus = $row['vrhPoskus'];
$pre_bonus = $row['bonus'];
$pre_bonusPoskus = $row['bonusPoskus'];
}
?>
图片: New results
最佳答案
我无法理解你在谈论分数时的意思,但是......它看起来像 if $row['vrh'], $row['vrhPoskus'], $row['bonus'] , $row['bonusPoskus']
相同,则位置必须相同。如果是这样的话代码可以是这样的
<?php
$pre_vrh = false;
$pre_vrhPoskus = false;
$pre_bonus = false;
$pre_bonusPoskus = false;
$place = 1;
$i1 = 0;
while( $row = mysql_fetch_assoc( $u10z ) ){
print "<tr>";
// we should compare old and new values for getting place
if ($pre_vrh != $row['vrh'] || $pre_vrhPoskus != $row['vrhPoskus'] || $pre_bonus != $row['bonus'] || $pre_bonusPoskus != $row['bonusPoskus']) {
$place = $i1 + 1;
}
$i1++;
print "<td>" . $place . "</td>";
print "<td>" . $row['ime'] . "</td>";
print "<td>" . $row['priimek'] . "</td>";
print "<td>" . $row['klub'] . "</td>";
print "<td>" . $row['drzava'] . "</td>";
print "<td>" . $row['vrh'] . "</td>";
print "<td>" . $row['vrhPoskus'] . "</td>";
print "<td>" . $row['bonus'] . "</td>";
print "<td>" . $row['bonusPoskus'] . "</td>";
print "</tr>";
$pre_vrh = $row['vrh'];
$pre_vrhPoskus = $row['vrhPoskus'];
$pre_bonus = $row['bonus'];
$pre_bonusPoskus = $row['bonusPoskus'];
}
?>
关于PHP + MySQL 记分牌,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35734237/