0

基本的にはBANされた人を出力するテーブルを作っています。これまでのところ、実際の名前を表示する代わりにプレイヤー ID を表示するだけで、MySQLi ですべてを完了しました。プレイヤーIDが別のテーブルに保存されているため、これに問題があります。

http://i.stack.imgur.com/sy6G9.png

この写真はメインテーブルの構造ですが、player_id とcreator_id に注目してください。私がしなければならないことは、IDを一致させ、以下に示す他の表から、それに応じて番号を行の「名前」に置き換えることです http://i.stack.imgur.com/Lm3Fg.png

あなたが私を助けてくれるなら、私はそれを大いに感謝します.

4

2 に答える 2

2
SELECT * FROM TableA, TableB
INNER JOIN TableB
ON TableA.id = TableB.player_id
于 2013-10-04T16:06:28.740 に答える
1

このクエリは、禁止されたプレーヤーの名前を表示します。

SELECT name FROM banned_table INNER JOIN name_table ON player_id=name_table.id 

もちろん、DB 内の実際のテーブル名に変更する必要がbanned_tableあります。name_table

更新:以下のコメントから、これはOPの解決策です

SELECT b.*,n.name as player, n2.name as admin FROM banhammer_bans b 
JOIN name_table n ON b.player_id=n.id 
JOIN name_table n2 ON b.creator_id=n2.id
ORDER BY b.created_at DESC

表示コードを変更します。

echo'<td>' . $row['player_id'] . '</td>';
echo'<td>' . $row['creator_id'] . '</td>';

することが:

echo'<td>' . $row['player'] . '</td>';
echo'<td>' . $row['admin'] . '</td>';
于 2013-10-04T16:05:03.667 に答える