2012-02-18 7 views
0

をソートするための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> 

最高から最低にそれらを並べ替え、テーブルに私のゲームからユーザーのスコアを投稿しようとしているイム。私はこだわっている..

答えて

4

変更

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

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

にソート

arsort($selection); 
ksort($nameselection); 
+0

PHPのソートを削除するようにOPを思い出させるために+1。 – Umbrella

+0

美しいですが、私はSQLに新しいです、あなたはそれを行うことができるか分からなかった。非常に多くの –

+0

[チュートリアル](http://dev.mysql.com/doc/refman/5.5/ja/tutorial.html)が役に立ちます。 –

2

使用ORDER BY SQLクエリで、次のように:

SELECT * FROM people ORDER BY score DESC 
1

あなたは

すなわち "で注文" を使用してDB-側にそれらを並べ替えることができます。 SELECT * FROM people ORDER BY scores desc

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

1配列を削除し、あなたが答えることは第三だったにも関わらず、あなたは、最初でした正しいフィールド名、 'sco再 ' – Umbrella

関連する問題