使用php显示类别,子类别和子类别
问题描述:
我正在网站和该网站上工作,并希望显示类别>子类别>子类别。使用php显示类别,子类别和子类别
类别正在展示。但我也想显示子类别。
这里是类别代码
<select>
<option>Select Category</option>
<?php
$query="select * from mydb";
$result=mysqli_query($connect,$query);
while($r=mysqli_fetch_assoc($result))
{
?>
<option value="<?php echo $r['id']?>"><?php echo $r['title']?></option>
<?php } ?>
</select>
答
所有你需要一种方法来存储类别的层次结构中的第一你的数据库。一个简单的方法(当然不是最好的方法,因为它依赖于排序)是向表中添加一个整数列,指定该类别具有多少“子”前缀。我假设这一栏被称为level
。
其次,期望的输出使用复选框而不是选项列表。为了得到这种类别/子类别的输出,你可以尝试:
<input type="checkbox" style="margin-left: 0px" /> Category <br />
<input type="checkbox" style="margin-left: 20px" /> Sub-Category <br />
为了产生类似上述情况,与
<?php
$query="select * from mydb";
$result=mysqli_query($connect,$query);
while($r=mysqli_fetch_assoc($result))
{
$id = $r['id'];
$indent = $r['level'] * 20;
$title = $r['title'];
echo "<input type=\"checkbox\" value=\"$id\" style=\"margin-left: ${indent}px\" />$title<br />";
}
?>
我建议添加另一列(如my_order
)和替换代码添加用select * from mydb order by my_order asc
替换查询来控制类别的排序。
您是否将这种层次结构存储在数据库中? – sauerburger
@sauerburger这只是演示。我会改变它。如果您知道如何显示子类别,请让我知道 – Unidan