我需要一个从mysql表中提取数据(玩家ID)的PHP脚本(我知道到目前为止该怎么做)然后使用该玩家ID(1-5位数字)来查找相应的玩家名称另一张桌子。
基本上我需要显示哪个玩家在网站上发布了哪条消息。
这是脚本:
<?php
include('mysql_connection.php');
$c = mysqlConnect();
$locale = $_GET['locale'];
$last_bulletins_id = $_GET['bulletins_id'];
sendQuery ("set character_set_results='utf8'");
sendQuery ("set collation_connection='utf8_general_ci'");
if(strcmp($locale,"en") != 0)
$locale = "en";
$result = sendQuery("SELECT * FROM bulletins WHERE id > ".$last_bulletins_id." and locale = '".$locale."' ORDER BY id DESC LIMIT 10");
echo '<table width=\"100%\">';
while($row = mysql_fetch_array($result, MYSQL_NUM))
{
echo '<tr><td width=\"100%\"><b>Author: </b></td></tr>';
echo '<tr><td width=\"100%\"><b>Date: </b>'.$row[2].'</td></tr>';
echo '<tr><td width=\"100%\">'.nl2br($row[4]).'</td></tr>';
echo '<tr><td width=\"100%\"><hr style="height: 2px; border: none; background: #515151;"></td></tr>';
}
echo '</table>';
mysqlClose($c);
?>
但是,消息行没有播放器名称。只有他的身份证明他的名字在另一个数据库中。所以我不得不提取ID,使用它在另一个表中找到相应的名称并显示相应的名称。
用什么函数来做这件事?
答案 0 :(得分:1)
如果播放器名称位于同一个数据库中,而只是另一个表格,则可以使用此
的连接SELECT b.*, p.username
FROM bulletins b
join players p on p.user_id = b.user_id
WHERE b.id > $last_bulletins_id
and b.locale = '$locale'
ORDER BY b.id DESC
LIMIT 10
答案 1 :(得分:1)
第一个DB:FDB ---&gt;表'用户' - &gt;列'user_id'
第二个DB:SDB ---&gt;表'用户' - &gt;列'user_id,user_name'
SELECT FDB.user.user_id, SDB.user.user_name
FROM FDB.user, SDB.user
WEHRE FDB.user.user_id = SDB.user.user_id
答案 2 :(得分:0)
在mysql查询中使用ceep player name和Id
的表执行JOIN