0
因此,我擁有一個在線遊戲,每個用戶都有一個教練級別,所以我們可以將他們排名從最高到最低。在數據庫中,存儲教練級別的數字有一個數字,例如1或4或5.然後,我們將其除以0.001以得到真正的教練級別。通過desc排序似乎失敗
以下是迄今爲止的第一個編碼。
$pageLimit=PAGE_PER_NO*$id;
$query="SELECT * FROM users ORDER BY trainer_level DESC limit $pageLimit,".PAGE_PER_NO;
$res=mysql_query($query);
$count=mysql_num_rows($res);
$HTML='';
if($count > 0){
echo "<table width='100%' border='0' cellspacing='0' cellpadding='0'>";
echo "<table width='100%' border='1' table class='gridtable' >
<tr>
<th>Username</th>
<th>Trainer Level</th>
</tr>";
while($row = mysql_fetch_array($res))
{
$i++;
echo '<td><img src="http://domainame.com/'.$row['avatar'].'" border=0>' ;
echo "<a href='membersprofile.php?nicky=".$row['username']." '>" . $row['username'] . "</a></td>";
echo "<td>";
echo "Wins: ";
$trainer_level= mysql_real_escape_string($row['trainer_level']);
$trainer_level2 = strip_tags($trainer_level);
$b = '0.001';
$total = ($trainer_level2 * $b) ;
echo $total ;
"</td>";
echo "</tr>";
}
echo "</table>";
}else{
$HTML='No Data Found';
}
echo $HTML;
這裏是我所得到的 http://gyazo.com/994d215f0621371c62d9d1c087f77b1f.png
已經可以看到0.008達比咱高的屏幕截圖:0.075 但0.075大於0.008
從tl desc的表順序中選擇CAST(trainer_level AS DECIMAL(30,3))作爲tl將您的值翻譯爲字符串,而不是十進制 – davethecoder
順便說一句,像這樣混合邏輯和演示文稿只會導致頭痛進一步在路上。如果你可以將你的PHP從你的HTML中分離出來 - 可能通過使用一個MVC框架 - 你的網站會更容易維護! –