0

我对 MySQL 和 PHP 都很陌生。但我正在尝试从我的数据库中正确列出我的结果。但只能得到一些结果。

这是我的 SQL,当我直接尝试到数据库时,我得到了我想要的结果。

$sql = "SELECT ItemRelation.ItemRelTo, ItemRelation.Item, Items.CatID, Items.ItemID,             
Items.Title, Items.Image, Items.Desc, Items.TimeStamp
FROM Items
INNER JOIN ItemRelation
ON ItemRelation.ItemRelTo=Items.ItemID
WHERE ItemRelation.Item = " . $filterbyitem;

所以当我试图用 mysqli_fetch_array 列出我的结果时,我得到的结果不一样

$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result))
{
    echo '<tr>';
    echo '<td>' . $row['ItemID'] . '</td>';
    echo '<td>' . $row['Item'] . '</td>';
    echo '<td>' . $row2['CatID'] . '</td>';
    echo '<td>' . $row2['Title'] . '</td>';
    echo '<td><img src="Image/',$row2['Image'],'"></td>';
    echo '<td>' . $row2['Desc'] . '</td>';
    echo '<td>' . $row2['TimeStamp'] . '</td>';
    echo '</tr>'; 
}

它列出了 ItemID 和 Item 的结果,但其余的不会显示。有没有人可以通过这样做看到任何问题?我之前已经列出了这样的结果,但当我从几个表中读取时,没有列出这个 SQL 突击队。

4

1 回答 1

0

将 row2 更改为 row 即可解决您的问题

$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result))
{
    echo '<tr>';
    echo '<td>' . $row['ItemID'] . '</td>';
    echo '<td>' . $row['Item'] . '</td>';
    echo '<td>' . $row['CatID'] . '</td>';
    echo '<td>' . $row['Title'] . '</td>';
    echo '<td><img src="Image/',$row['Image'],'"></td>';
    echo '<td>' . $row['Desc'] . '</td>';
    echo '<td>' . $row['TimeStamp'] . '</td>';
    echo '</tr>'; 
}
于 2013-07-30T06:16:04.903 回答