现在我有了这个页面,我用foreach
来填充页面。然后我在其中有foreach
来获取另一个包含特定ID行的表。在嵌套的foreach下的任何问题都不会填补。
表
示例:
<!-- Get The Person. Results in ONE person. -->
<?
$list = $db2->prepare(" SELECT * FROM Table WHERE ID = ? ");
$list->execute(array($id));
$data = $list->fetchAll();
foreach ($data as $row) :?>
<div><?=$row["name"]?></div>
<!-- Get The Colors. Gets as many results as there are for that ID. -->
<?
$list2 = $db2->prepare(" SELECT * FROM AnotherTable WHERE ID = ? ");
$list2->execute(array($id));
$data2 = $list2->fetchAll();
foreach ($data2 as $row2) :?>
<div><?=$row2["color"]?></div>
<?endforeach?>
<!-- Doesn't show up on the page. -->
<div><?=$row["food"]?></div>
<?endforeach?>
答案 0 :(得分:0)
我认为你在两个表上使用相同的$ id是导致问题的原因。如果它是子表,并且Table_ID是外键,则可能是
" SELECT * FROM AnotherTable WHERE Table_ID = ? "
或者您可以使用加入并执行
"SELECT * FROM Table INNER JOIN AnotherTable ON Table.ID = AnotherTable.Table_ID WHERE ID = ? "
假设Table_ID是你的外键。
答案 1 :(得分:0)