我正在制作一个足球网站。我有以下表结构:
season1 (name of the table)
id | player1 | player2 | score
我想把分数放到一个html表中。此表仅适用于名为nickname1的玩家与其他所有玩家。我有这个:
$query = mysql_query("SELECT * FROM season1 WHERE player1='nickname1'") or die(mysql_error());
while($row = mysql_fetch_array( $query )) {
echo "<tr><td>";
echo "";
echo "</td><td>";
echo $row['score2'];
echo "</td><td>";
echo $row['score3'];
echo "</td><td>";
echo $row['score4'];
echo "</td><td>";
echo $row['score5'];
echo "</td></tr>";
}
echo "</table> <br>";
我尝试了SELECT * FROM season1 WHERE player1='nickname1' AND player2='nickname2'
,但之后只会在表格中显示player1与player2。我想在同一张桌子上显示所有4名球员与球员1的比赛。
答案 0 :(得分:0)
您只需将循环集中在一行:
echo "<table><tr>";
while($row = mysql_fetch_array( $query )) {
echo "<td>{$row['score']}</td>";
}
echo "</tr></table>";
这只会输出球员的得分。您可以将其修改为具有昵称标题等等。
请注意,$row
数组类似于您的表结构。 $row['score']
将为您提供自score1
不是表格中的列的玩家的分数,$row
中不存在。
可能的设计:
echo "<table><tr><th>Player 1</th><th>Player 2</th><th>Score</th></tr><tr>";
while($row = mysql_fetch_array( $query )) {
echo "<td>{$row['player1']}</td>";
echo "<td>{$row['player2']}</td>";
echo "<td>{$row['score']}</td>";
}
echo "</tr></table>";
将输出(取决于数据库中的ID)
Player 1 | Player 2 | Score
p1 p2 0
p1 p3 0
注意: MySQL_ *已在PHP 5.5中弃用。请改用MySQLi或PDO
答案 1 :(得分:0)
假设得分为1,则为1分:
$query = mysql_query("SELECT * FROM season1 WHERE player1='nickname1'") or die(mysql_error());
while($row = mysql_fetch_array( $query )) {
echo "<tr><td>";
echo "";
echo "</td><td>";
echo $row['player1']." vs ".$row['player2'].", with a score of: ".$row['score'];
echo "</td></tr>";
}
echo "</table> <br>";
我希望它有所帮助。
Saludos;)