こんにちは、私はゲーム トロフィー システムを作成しており、まだ pdo を学習しています。データベースに 2 つのテーブルがあります
最初のテーブル (ゲーム) 構造は
id, title, thumb, bronze, silver, gold, platinum
セカンドテーブル(トロフィー)の構造は
id, title, game_id
( game_id ) 列によってゲームに割り当てられたすべてのトロフィー
次のようにゲームをリストしたい
ゲーム名
獲得トロフィーx合計
使用しているクエリは、トロフィーの合計を取得するだけです。トロフィー テーブルからゲームのトロフィー データを取得する方法がわかりません。
これは私のクエリコードです
$stmt = $db->query('SELECT * FROM trophies ORDER BY id DESC');
$numcat = $stmt->rowCount();
if($numcat == 0)
{
echo "There's No Trophies To Show";
}
else
{
foreach($db->query("SELECT thumb, title, id, SUM(bronze + silver + gold + platinum) AS total FROM games GROUP BY id DESC") as $row)
{
echo "
<div class='game_row'>
<div class='thumb_box'><img src='../images/thumbs/$row[thumb]' width='87' height='48' alt='$row[title]' /></div>
<div class='info_box'>
<span class='game_name'><a href='trophies.php?action=edit&game_id=$row[id]'>$row[title]</a></span><br />
<span class='game_trophy'>0 Of $row[total] Trophies</span>
</div>
</div>";
}
}
join を使用しようとしましたが、何かが足りないと確信しています
結合を使用した私のクエリ
foreach($db->query("SELECT thumb, title, id, SUM(bronze + silver + gold + platinum) AS total FROM games JOIN trophies ON games.id = trophies.game_id GROUP BY id DESC") as $row)
私が得たエラー
警告: 同じ行で foreach() に無効な引数が指定されました