Я пытаюсь создать систему ранжирования / рэддера, где кланы с наивысшим рангом (1) должны быть наверху, а клан с рангом 2 следующим и так далее. Но я не могу заставить это работать ... Я пробовал разные способы этого:
PHP:
$sql = mysql_query("SELECT * FROM clans ORDER BY rating DESC");
while($row=mysql_fetch_array($sql))
{
$totalclans = $row['id'];
}
$clans = 1;
$clansnumber = $totalclans;
while($clans <= $totalclans)
{
$sql2 = mysql_query("SELECT * FROM clans WHERE id='$clansnumber'");
while($row=mysql_fetch_array($sql2))
{
$name = $row['name'];
}
$sql2 = mysql_query("SELECT COUNT(*) AS totalmembers FROM members WHERE clan='$name'");
while($row=mysql_fetch_array($sql2))
{
$totalmembers = $row['totalmembers'];
}
$sql2 = mysql_query("SELECT * FROM clans WHERE id='$clansnumber'");
while($row=mysql_fetch_array($sql2))
{
echo "<div class='newestmemberusername'><a href='clan.php?clan=" . $row['name'] . "'>" . $row['name'] . ":</a></div>";
echo "<table class='profileinfo' cellpadding='5' cellspacing='0' border='0'>";
echo "<tr><td rowspan='4' style='border:none;'><div class='rankbox'>" . $row['rating'] . "</div></td></tr>";
echo "<tr><td style='" . $firstrowleft . " width: 200px;'>Members:</td><td class='profileinfosecondrow' style='" . $firstrowright . "'>" . $totalmembers . "</td></tr>";
echo "<tr><td style='" . $color2 . " width: 200px;'>Victories:</td><td class='profileinfosecondrow' style='" . $color2 . "'>" . $row['victories'] . "</td></tr>";
echo "<tr><td style='" . $lastrowleft1 . " width: 200px;'>Losses:</td><td class='profileinfosecondrow' style='" . $lastrowright1 . "'>" . $row['losses'] . "</td></tr>";
echo "</table>";
$clans ++;
$clansnumber --;
}
}
echo "</div>";
echo "<div class='contentboxbodybottom'></div>";
}
К сожалению, он просто показывает все кланы, а не упорядочивает их по рангу. Я попытался изменить идентификатор на ранг и изменить его так, чтобы он сначала проверял ранг 1, затем ранг 2 и до ранг 10 (максимальный ранг), но затем он все равно просто показывает все кланы в порядке, который я не делаю. Я не хочу этого.