PHP函数用于比较两个表中的数据以合并到现有脚本中

时间:2012-11-30 10:23:40

标签: php mysql html-table

我需要一个从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,使用它在另一个表中找到相应的名称并显示相应的名称。

用什么函数来做这件事?

3 个答案:

答案 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