Я создал систему ранжирования из некоторого кода, который я нашел на этом сайте, все работает отлично, но у меня есть проблема.Рейтинги, повторяющие записи
Он извлекает все детали из базы данных, дает им ранг и ставит их в порядок, но, похоже, все детали собираются вместе.
Так что у меня есть два пользователя, один имеет 20 золотых и один имеет 10, я хочу, чтобы показать, как этот
Уровень 1 Джон с золотом 20 ранга 2 Петр с золотом 10
, но вместо этого он показывает
ранга 1 является джон с золотым 20rank 1, питер с золотом 20 (реальный скриншот: http://snag.gy/lNVNd.jpg)
в настоящее время они находятся в порядке, но только у пользователя "6" есть 4000100 золота ?!
Только один пользователь на самом деле имеет это первое количество золота!
Помощь :(
Вот полный код
<?php
include("header.php");
include("connect.php");
if(isset($_SESSION['userlogin'])){
$sql = "SELECT stats.gold, stats.id, users.username, users.id FROM users, stats ORDER BY gold DESC";
$result = mysqli_query($con,$sql);
if(!$result){
echo 'SQL Query Failed';
}else{
$rank = 0;
$last_score = false;
$rows = 0;
while($row = mysqli_fetch_array($result)){
$rows++;
if($last_score!= $row['gold']){
$last_score = $row['gold'];
$rank = $rows;
}
echo "rank ".$rank." is ".$row['username']." with gold ".$row['gold']."";
}
}
}else{
echo "You must be logged in to view this page!";
?>
<?php
}
include("footer.php");
?>
Спасибо, что поставили их в порядок :) все еще говорит, что все пользователи имеют золото 4000100, хотя, только имя пользователя "6" имеет такую сумму http://snag.gy/Q73At.jpg –
Я отредактировал мой ответ, мое последнее редактирование находится наверху. Я надеюсь, что это поможет вам. –
Это сработало! Я знал, что это какая-то проблема присоединения, я думал, что это скорее эхо, чем запрос. Большое спасибо :) –