我愿意使用类别和子类别直接从数据库中获取数据来下拉(或列表,这并不重要)。
订单应该是:
类别1
- 子类别1
- 子类别2
- 子类别3 - ......
第2类
- 子类别1
- ...
...
甚至添加未来的类别和子类别。
我正在使用MVC,这是我的代码:
查看:
<?php foreach ( $datoCategorias as $categorias ) { ?>
<div class="col">
<div class="dropdown">
<button class="col btn btn-secondary" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<?php echo $categorias['NAME'] ?></button>
<div class=" col dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="index.php?controller=products&action=category&id="></a>
</div>
</div>
</div>
<?php } ?>
的index.php:
if ($_GET['action'] == "category") {
$controller = new productos_controller();
$controller->category();
}
控制器:
function category() {
$categorias = new productos_models();
$datoCategorias=$categorias->get_categorias();
require_once("views/products.php");
}
型号:
public function get_categorias(){
$categorias=$this->db->query("select * from CATEGORY;");
while($listaCategorias=$categorias->fetch_assoc()){
$this->cats[]=$listaCategorias;
}
return $this->cats;
}
数据库表CATEGORY:
| ID | NAME | PARENTCATEGORY |
| 1 | CAT1 | null |
| 2 | CAT2 | null |
| 3 | CAT3 | null |
| 4 | SUB1 | 1 |
| 5 | SUB1 | 2 |
问题是:我应该如何做foreach或foreach,以使结果看起来像我之前说过的顺序,因为我只是设法显示了类别的名称。