我正在尝试使用while循环从我的mysql数据库中删除来自2个不同表的数据。
目前我可以显示1个表中的数据并将结果限制为3.然后我想显示另一个表中的前5个记录。如果我加入表格,我只能使用LIMIT显示相同数量的项目?
我使用while循环来显示名为item的表中的内容,使用以下代码;
$查询“);
$ result2 = @mysql_query($ query,$ connection)
或死(“无法执行查询
$查询”);
<?php
while($row= mysql_fetch_array($result))
{
?>
<?php echo $row['item'] ?>
<?php
}
?>
如果我从下一个名为movie的表开始另一个循环,但是使用以下代码不会显示数据;
<?php
while($row= mysql_fetch_array($result2))
{
?>
<?php echo $row['title'] ?>
<?php
}
?>
显示2个表中数据的最佳方法是什么? 非常感谢
答案 0 :(得分:2)
我不知道你是否忘记粘贴一些代码,但这应该有效:
<?php
$query = "select * from item order by date, time asc limit 0,3";
$result = mysql_query($query);
while($row= mysql_fetch_array($result))
{
echo $row['item'];
}
$query2 = "select * from movie limit 0,5";
$result2 = mysql_query($query2);
while($row= mysql_fetch_array($result2))
{
echo $row['movie'];
}
?>
您也可以使用一个SQL查询来执行此操作:
SELECT i.item, m.movie
FROM (SELECT * FROM item ORDER BY date, time ASC LIMIT 0,3) i,
(SELECT * FROM movie limit 0,5) m
然后在php:
<?php
while($row= mysql_fetch_array($result))
{
echo $row['item'];
echo $row['movie'];
}
?>
但这取决于您希望如何格式化输出。