использование PHP-скрипта для сортировки записей базы данных sql

Мне нужна помощь в сортировке значений моей оценки в моей базе данных sql.

    <table border = '2'>
    <?php

    $con = mysql_connect("localhost", "root", "");
    if(!$con)
    {
        echo "Could not establish connection to the database " . mysql_error();
    }

    $mydb = mysql_select_db("users", $con);
    if (!$mydb)
    {
        echo "Error selecting database " . mysql_error();
    }

    $mystatement = mysql_query("SELECT * FROM people");
    $dbcount = mysql_num_rows($mystatement);
    $selection = array(0 => "");
    $nameselection = array(0 => "");

    $i = 0; 
        while ($row = mysql_fetch_array($mystatement))
        {
        $selection[$i] = $row['score'];
        $nameselection[$i] = $row['username']; 
        //echo "<tr> <td>$row[username]</td> <td>$row[score]</td></tr>";
        $i++; 
        }
arsort($selection);
ksort($nameselection);

for ($x = 0; $x < $dbcount; $x++)
{
    echo "<tr> <td>$nameselection[$x]</td> <td>$selection[$x]</td> </tr>"; 
}


    ?>

    </table>

я пытаюсь опубликовать результаты пользователя из моей игры в таблицу, отсортировав их от самого высокого до самого низкого. я просто застрял..


person Josh Siegl    schedule 18.02.2012    source источник


Ответы (4)


Изменять

$mystatement = mysql_query("SELECT * FROM people");

To

$mystatement = mysql_query("SELECT * FROM people ORDER BY score DESC");

Удалить сортировку массива

arsort($selection);
ksort($nameselection);
person Yada    schedule 18.02.2012
comment
красиво, я новичок в sql, даже не знал, что вы можете это сделать. большое спасибо - person Josh Siegl; 19.02.2012
comment
Может оказаться полезным руководство. - person Alberto De Caro; 20.06.2012

Используйте ORDER BY в запросе SQL следующим образом:

SELECT * FROM people ORDER BY score DESC
person Valeh Hajiyev    schedule 18.02.2012

Вы можете отсортировать их на стороне БД, используя «Упорядочить по».

ie. SELECT * FROM people ORDER BY scores desc

person William Dixon    schedule 18.02.2012

person    schedule
comment
+1, несмотря на то, что вы ответили третьим, вы первым указали правильное имя поля, score - person Umbrella; 19.02.2012