Autor Zpráva
forest
Profil *
Zdravím,

mám níže uvedený kód, který funguje dle mých potřeb. Bohužel když má více účastníků stejný počet bodů ( $row["points"] ) a také stejný počet tipů ( $row["count_tips"] ) jsou vlastně na stejném místě ale moje pořadí to zohlednit neumí. Řešit to v SQL je absolutně nad moje schopnosti ale myslím že by mohlo být jednodušší řešení v php..
Stačil by mi následující formát:
1. Lojza 5
2. Karel 4
2. Honza 4

Předem díky za nápady.

ORDER v SQL:
ORDER BY points DESC, count_tips ASC

// Načteme data z DB
$tipers = sqlDumpTipers($set_season, "0");

// Nastavení čísla 1. řádku
$numb = 1;
     while($row = mysql_fetch_array($tipers))
     {
          // Úspšnost tipů
          $ok_percent = round((100/$row["count_tips"])*$row["points"]);
          
        echo "<tr'>
                    <td>$numb</td>
                    <td>$row[nick]</td>
                    <td>$row[points]</td>
                    <td>$row[count_tips]x</td>
                    <td>$ok_percent %</td>
                </tr>";
        
        // Zvyšujeme pořadí   
        $numb++;
                
     }
juriad
Profil
forest:
Zrovna nedávno jsem radil jak to řešit (tam chtěl shodné pořadí pro lidi se stejnými atributy wins a diff.
Diskuse JPW: SQLITE - Úprava MySQL dotazu pro použití v SQLITE
Místo 15. řádku v odkázaném zdrojáku můžeš rovnou $row vypsat.
forest
Profil *
juriad:
Z odkázaného kódu jsem vypsal rovnou proměnnou $rank a vše funguje. Super moc díky

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: