道歉,如果我应该知道更好,但我一直在这个挣扎了很长一段时间。Foreach只是回声第一次输入
我有一个300行的MySQL数据库。它包含4列,“eventid”,“player1”,“player2”,“score”。在游戏中,玩家1给出各种其他玩家(玩家2)100分。
我想要做的是向登录用户(玩家1)显示他们得分的“玩家2”的表格。
我的代码如下所示:
$currentuserid = 00001;
$opponent_data = mysql_query("SELECT * FROM `scores` WHERE `player1` = $currentuserid ORDER by score");
$opponent_count = mysql_num_rows($opponent_data);
echo $opponent_count.'<br>'; // Just to test -> and it shows I have 144 entries in the array, i.e. 144 player 2's that player 1 has scored
$opponent_scores = mysql_fetch_assoc($opponent_data);
$runrows = $opponent_scores;
foreach ($opponent_scores as &$runrows);
{
$id = $runrows['eventid'];
$player2 = $runrows['player2'];
$score = $runrows['score'];
echo $player2." got ".$score;
echo "<br>";
}
当我跑这一切我能看到的是
73得到44
,但我希望看144行“玩家2”获得“玩家2的得分”。
我在做什么错?
非常感谢,特别是解释了mysql_fetch_assoc正在做什么 - 我认为这是获取所有行。 – 2010-10-29 14:14:18