我使用UNITY創建遊戲它是PHP bla bla ... 我有一些小東西需要弄清楚排序行。 事情是 - 我需要對球員進行排序。 例如,如果播放器3個葉/離開遊戲,則玩家3有UID 2PHP mysql使用ORDER BY DESC排序行
那麼我們只有玩家1玩家2和玩家4他們0 1 3
player1 = 0
player2 = 1
player3 = 2
player4 = 3
所以我需要做的是那種說出來,所以如果player3 left uid 2
我需要做的排序 它會走這條路
player4 = 3
player2 = 1
player1 = 0
我使用的sort($row = mysql_fetch_array($sql))
但我只得到了錯誤 我還使用了sort($row['players']);
$row['players']
這是0 1 2 3
但它不是排序,我需要以及它的排序,但是,它的輸出是該
player1 = 3
player2 = 1
player4 = 0
這是錯誤的不等於現在球員的事情,當前玩家
幫助我的傢伙什麼應該是正確的代碼
我希望大家明白我需要在這裏解決。
我也嘗試使用ORDER BY球員DESC但它不好。我知道有更多的指定順序。
我有一些更多的解釋,這是我需要解決的命令/排序。
GameID Turn
3 2
6 1
7 2
5 2
8 0
9 1
return should be { for example GameID 6 is TURN for the Game or Left in the Game }
GameID Turn
6 1
9 1
8 0
3 2
5 2
7 2
another example { for example GameID 7 is TURN for the Game or Left in the Game }
GameID Turn
7 2
3 2
5 2
8 0
9 1
6 1
這裏是我的查詢
$email_val = [email protected]';
if($email_val != null){
$sqlCheckError = mysql_query("SELECT * FROM game WHERE player1 = '".$email_val."' || player2 = '".$email_val."' || player3 = '".$email_val."' || player4 = '".$email_val."' ") or die (mysql_error());
$gameCheck = mysql_fetch_array($sqlCheckError);
// CHECK FOR GAMEID ERROR
$gameIDCheck = $gameCheck['gameID'];
// EMAIL EQUAL TO THE CURRENTTURN WHERE ID
$sql = mysql_query("SELECT * FROM game WHERE player1 = '" . $email_val . "' || player2 = '".$email_val."' || player3 = '".$email_val."' || player4 = '".$email_val."' ") or die (mysql_error());
// FIXED THE SORT OF
while ($row = mysql_fetch_array($sql)) {
$p1 = $row['player1'];
$p2 = $row['player2'];
$p3 = $row['player3'];
$p4 = $row['player4'];
if ($asterisk > 0) {
echo "*";
}
echo $row['gameID'] . '|';
echo $row['gameStatus'] . '|';
echo $getNameLower->_NAME_LOWER_PLAYER_ONE_($p1);
echo $getNameLower->_NAME_LOWER_PLAYER_TWO_($p2);
if (!empty($p3)){
echo $getNameLower->_NAME_LOWER_PLAYER_THR_($p3);
} else {
echo '';
}
if (!empty($p4)){
echo $getNameLower->_NAME_LOWER_PLAYER_FOU_($p4);
} else {
echo '';
}
echo '|' . $row['start'];
echo '|' . $row['currentTurn'];
echo '|' . $row['lastWord'];
echo '|' . $row['lastPlayer'];
echo '|' . $row['lastPoints'];
$cur = $row['currentTurn'];
// CHECK THE CurrentTurn then PUT IT AS PICURL
if ($cur == '0') { echo $getPIC->purl_1($p1); }
elseif($cur == '1') { echo $getPIC->purl_2($p2); }
elseif($cur == '2') { echo $getPIC->purl_3($p3); }
elseif($cur == '3') { echo $getPIC->purl_4($p4); }
$asterisk++;
}
if($gameIDCheck == null){
echo '0';
}
}
else{
echo '0';
}
是的,我已經認爲在第一位置也。 Order By對所有事物都很容易排序。但是,如果我們使用ORDER BY DESC 2 1 0和ASC 0 1 2,我不希望現在清除
ORDER BY players DESC'有什麼問題?在數據庫中排序比在PHP中排序要好得多。 – Fluffeh
可以請您發佈您的查詢嗎?這樣我可以看到它是否有錯誤=) – Mic1780
我們不能使用ORDER BY我張貼另一個例子..如果我們這樣做,它將按照'2 1 0'順序排序,它不會排序像我們需要的'2 0 1'這樣的東西。 – Butternut