代码未显示第一个结果

时间:2014-06-15 19:00:07

标签: php html mysqli

关于此代码:

<?php
$result = mysqli_query($connect,"SELECT subcategories.subcat_name, subsubcategories.subsubcat_name FROM subcategories INNER JOIN subsubcategories ON subcategories.subcat_ID=subsubcategories.subcat_ID WHERE subsubcategories.subcat_ID = 1");
$subcat_name = mysqli_fetch_array($result);
?>
<div class="grid_5 alpha omega" id="titlescontent"><p class="titlebar"><?php echo $subcat_name['subcat_name'];?></p></div>
<div class="clear"></div>
<div class="grid_5 alpha omega" id="content"><ul class="subcat">
<?php
while ($row=mysqli_fetch_array($result)){
?><li><?php echo $row['subsubcat_name'];?></li><?php
}
?>
</ul></div>
<div class="clear"></div>

由于某种原因,它开始显示第二个结果中的subsubcat_name,而不是我想要显示的第一个结果。知道为什么我需要在这段代码中改变什么?

2 个答案:

答案 0 :(得分:1)

你有额外的mysqli_fetch_array电话

答案 1 :(得分:1)

实际上,我觉得你需要第一个标题?在这种情况下,请尝试这种替代方法:

将您的while循环替换为:

$row = $subcat_name;
do {
    echo "<li>".$row['subsubcat_name']."</li>";
} while($row = mysqli_fetch_array($result));

这有什么变化?它基本上意味着循环体将为您的初始行运行,然后为其余行运行。