私はStackoverflowを含むどこでも検索しましたが、私の答えは正確な情報を見つけることができませんでした。私は他のサイトでそれらの答えを試したように、いくつかの答えはStackOverFlowでここにあり、うまくいきませんでした。PHP - データベースから上位10個のレコードを取得するにはどうすればいいですか
私はトップ10(別名:「リーダーボード/チャート」)で最高の評判を表示しているが、低い(最初)、次にランダムな(例えば:低い、高い、ミディアム)。私はSQLiコマンドで経験したことがないので、私はnoobと呼んでください(私は受け入れます)。ここで
は動作しません。私は現在書かれているコードです:
<h1>Leaderboards</h1>
<?php
$query = "SELECT user_name, reputation FROM m_users ORDER BY reputation DESC LIMIT 10";
?>
<div class="panel panel-default">
<div class="panel-heading">
top ten
</div>
<div class="panel-body">
<div class="table-responsive">
<table class="table">
<thead>
<tr>
<th>User</th>
<th>Reputation Points</th>
</tr>
</thead>
<tbody>
<?php
foreach($mysqli->query($query) as $rep)
{
echo '<tr>';
echo '<td>';
echo ''.$rep['user_name'].'';
echo '</td>';
echo '<td>';
echo $rep['reputation'];
echo '</td>';
echo '</tr>';
}
?>
</tbody>
</table>
</div>
</div>
</div>
に来るの結果は次のとおりです。
私は何をしたいことはあるjay 100
ray 1000
joy 250
:(簡単な「最低から最高」例えば、Call of Dutyのようなオンラインゲームのマルチプレイヤーでは、スコアによって最高から最低までを表示します。これは、最低、最高、最低、中...などの結果になります。
私はこれをまったく修正できません。だれでもバグの検出に役立つことができますか? :(
あなたのMySQLクエリを実行すると、あなたの結果は何ですか? –
= jay [100]、ray = [1000]&joy = [250]を示します。/:( – ItzAyshaGurl
こんにちは、私はあなたが 'varchar型でint型ではない'評判列を持たなければならないと思います。それであなたはそのようにソートしました、 "100"→ "1000"→ "250"のようになります。レピュテーション列の変数の型をintegerに変更すると助けになりますか? – CheeHow