我的PHP代码需要一些帮助。我正在尝试从mysql数据库中的两个不同的表中获取数据,这样我就可以输出每个内容。
我想输出如下内容:
101 BBC One S East
http://www.example.com/bsdev/UK-BBC-1
102 BBC Two
http://www.example.com/bsdev/UK-BBC-2
103 ITV
http://www.example.com/bsdev/UK-ITV-1
以下是内容的输出显示:
101 BBC One S East
http://www.example.com/bsdev/UK-BBC-1
http://www.example.com/bsdev/UK-BBC-2
http://www.example.com/bsdev/UK-ITV-1
102 BBC Two
http://www.example.com/bsdev/UK-BBC-1
http://www.example.com/bsdev/UK-BBC-2
http://www.example.com/bsdev/UK-ITV-1
103 ITV
http://www.example.com/bsdev/UK-BBC-1
http://www.example.com/bsdev/UK-BBC-2
http://www.example.com/bsdev/UK-ITV-1
以下是代码:
$qrytable1="SELECT id, channels, links, categories FROM channels_list";
$result1 = mysql_query($qrytable1) or die('Error:<br />' . $qry . '<br />' . mysql_error());
while ($row = mysql_fetch_array($result1))
{
echo "<p id='channels'>".$row["id"]. " " . $row["channels"]. "</p>";
$qrytable2="SELECT id, channels, streams FROM chris_channels";
$result2 = mysql_query($qrytable2) or die('Error:<br />' . $qry . '<br />' . mysql_error());
while ($row = mysql_fetch_array($result2))
{
echo "<p id='streams'>".$row["streams"]. "</p>";
}
//mysql_close();
//exit;
}
mysql_close();
exit;
你能告诉我一个例子,我可以用来从数据库的两个不同的表中获取内容,输出我想要的内容而不需要循环吗?
答案 0 :(得分:0)
你需要在表之间使用连接,即
$qrytable1="SELECT id, channels, links, categories, streams
FROM channels_list
INNER JOIN chris_channel ON (chris_channel.channels = channel_list.channels)";
[编辑]
两个表都有一个名为id的字段。您需要定义要显示/使用/返回的那个。我认为它是来自channels_list的那个,所以你需要将查询更改为:
$qrytable1="SELECT channels_list.id, channels, links, categories, streams
FROM channels_list
INNER JOIN chris_channel ON (chris_channel.channels = channel_list.channels)";