ユーザーがセッションのユーザー名の下にあるページに移動するたびに変更されます。誰かが私に理由を教えてくれますか?私は非常に感謝されます。私はセッションを開始した後に宣言するwhileループと関係があるかもしれないと感じています。PHPユーザーのログインが変更されました!
ここにユーザー名が変更されたページがあります。 (leaderboard.php)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
session_start();
if ($_SESSION['username'])
$user = "Welcome, ".$_SESSION['username']."!<br><a href='logout.php'>Logout</a>";
else
die("You must be logged in!");
$connect = //CONNECT TO DATABASE
$query = "SELECT @rank:= @rank + 1 as rank, s.* FROM (SELECT username, score, wins, games FROM stats, (SELECT @rank:=0) r ORDER BY score DESC LIMIT 10) s";
if ($query_run = mysql_query($query))
{
//begin table
echo "<div class='container'>
<table class='tableposition' border='1' width='600' cellpadding='3' cellspacing='0'>
<caption>OVERALL RANKINGS</caption>
<tr class='tablehead'>
<th>RANK</th>
<th> USERNAME</th>
<th>OVERALL SCORE</th>
<th>WIN%</th>
</tr>";
//begin loop
while ($query_row = mysql_fetch_assoc($query_run))
{
$rank = $query_row['rank'];
$username = $query_row['username'];
$score = $query_row['score'];
$wins = $query_row['wins'];
$games = $query_row['games'];
$winpere = $wins/$games * 100;
$winper = number_format($winpere,1);
echo "<tr class='tablecontents'>
<td>$rank</td>
<td>$username</td>
<td>$score</td>
<td>$winper %</td>
</tr>
";
}
//end loop
//close table
echo "</table>
</div>";
}else{
echo mysql_error();
}
//superbox file
include('superbox.php');
?>
コードを最小限に絞り、あなたのランクの名前が何であるかを知る必要はほとんどありません。トラフを見やすくするとより魅力的です。 – Wrikken
整数を文字列に変換しないでください( '1235') – Fredrik