誰かのランクなどを変更したいたびにphpmyadminを処理しないように、ユーザー権限とランキング用のページを作成しました。さて、このクエリには問題があります。実行するたびに、すべてのユーザーが同じランクになります。
$sql = "SELECT * FROM users ORDER BY rank DESC LIMIT $start_from, 20";
$rs_result = mysql_query($sql) or die(mysql_error);
while ($row = mysql_fetch_assoc($rs_result)) {
echo "
<tr>
<td>".$row['username']."</td>
<td>".$row['rank']."</td>
<td>
<form action='' method='post'>
<select name='rank'>
<option value='member'>Member</option>
<option value='moderator'>Moderator</option>
<option value='supermoderator'>Supermoderator</option>
<option value='administrator'>Administrator</option>
</select>
<input type='submit' name='change' value='Change' />
</form>
</td>
</tr>
";
if (isset($_POST['change'])) {
$sql_rank = "UPDATE users SET rank = '".$_POST['rank']."' WHERE username = '".$row['username']."'";
$res_rank = mysql_query($sql_rank) or die(mysql_error());
}