2
K,我有一個關於PHP的問題。 我正在努力爲我的遊戲製作一個高分,它擁有關卡和XP。排序 - 但也排序另一個?
我的問題很簡單,我想按總水平排序,這樣總水平最高的人就成了第一,第二,第三等。 但是我也希望它按xp排序,所以如果他們的總體水平相同,那麼xp最高的人將首先顯示,而不是隨機顯示。
這是我迄今爲止按級別排序,但我不知道如何使它檢查xp。
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM skillsoverall"),0) or die(mysql_error());
$from = (isset($_GET["from"]) && is_numeric($_GET["from"]) && $_GET["from"] < $count) ? $_GET["from"] : 0;
$query = mysql_query ("SELECT * FROM skillsoverall ORDER BY lvl DESC limit $from, $ppls_page") or die(mysql_error());
$i = $from;
while($row = mysql_fetch_array($query)){
$i++;
if($i < $top_hiscore) {
if($i & 1) {
echo '<tr class="row row1">
<td class="rankCol"><span>'.$i.'</span></td>
<td class="nameCol"><span><a href="'.$website.'/'.$pers.'?name='.$row["playerName"].'" target="_self">'.BBCode($row["playerName"]).'</a></span></td>
<td class="lvlCol">'.dots($row["lvl"]).'</td>
<td class="xpCol">'.dots($row["xp"]).'</td>
</tr>
';
} else {
echo '<tr class="row row2">
<td class="rankCol"><span>'.$i.'</span></td>
<td class="nameCol"><span><a href="'.$website.'/'.$pers.'?name='.$row["playerName"].'" target="_self">'.BBCode($row["playerName"]).'</a></span></td>
<td class="lvlCol">'.dots($row["lvl"]).'</td>
<td class="xpCol">'.dots($row["xp"]).'</td>
</tr>
';
我不知道該從哪裏下去,有什麼幫助嗎?
好吧,非常感謝。它現在工作完美。我不知道它允許多列。 – hellman2741
@ hellman2741很高興幫助。你可能也會對這個相當長的興趣 - 但非常詳細和充滿查詢,輸出和解釋 - [問題和答案](http://stackoverflow.com/questions/12475850/how-can-an-sql-query- return-data-from-multiple-tables)我發佈了一些幫助SQL查詢的工具 - 它主要關注於從多個表中獲取數據,但是您可以從閱讀中受益,從而更好地瞭解您可以在SQL伴侶:) – Fluffeh