经过这里提供的一些解决方案,我仍然无法正确地理解。当我将鼠标悬停在类别名称上时,只有最后一个类别的子类别正在从数据库中提取和显示。
<div class="mega-menu-category">
<ul class="nav">
<!-- Other side-menu navs -->
<?php $sql=mysqli_query($con,"SELECT id,categoryName FROM category");
while($row=mysqli_fetch_array($sql))
{
?>
<li><a href="category.php?cid=<?php echo $row['id'];?>"><?php echo $row['categoryName'];?></a>
<?php
$getid = $row['id'];
}?>
<div class="wrap-popup column1">
<div class="popup">
<?php $sql=mysqli_query($con,"SELECT id, subcategory FROM subcategory WHERE categoryid= '$getid'");
while($row=mysqli_fetch_array($sql))
{
?>
<ul class="nav">
<li><a href="sub-category.php?scid=<?php echo $row['id'];?>"><?php echo htmlentities($row['subcategory']);?></a></li>
</ul>
<?php } ?>
</div>
</div>
</li>
<!-- used one -->
</ul>
</div>
1条答案
按热度按时间ct2axkht1#
您正在使用外部查询的所有结果集,而不是在内部循环中使用它。
下一个问题是对两个查询使用相同的变量,因为运行内部查询时,会破坏外部外观的结果集
我不得不提一下,你是开放的sql注入攻击。即使你正在逃避输入,它也不安全!您应该考虑在
MYSQLI_
或者PDO
api而不是串联的值