php - 在树结构中显示表格中的类别

标签 php mysql

我正在尝试在具有树结构的下拉列表中显示类别。我有一个具有以下结构的表

ID     Category      Level       Reference 
1      First            1          0
2      Second           1          0
3      Third            1          0
4      First's child 1  2          1
5      First's child 2  2          1
6      Next level       3          5

等级

这是层级吗?如果 level 是 1,那么 first level 和 2 是 first 的 child ,依此类推。

引用

此字段显示谁是 parent 。父类Id的引用。

我想按如下方式显示此数据:

First
   First's child 1
   First's child 2
      Next level
Second
Third

如何在选择框中显示如上所示的数据?

最佳答案

你可以通过你的数据库获取你的级别和类别名称,然后像这样循环它,例如:

echo '<select>';
foreach ($yourResult as $result) {
  echo '<option>'.str_repeat("&nbsp;",$result['level']).$result['category'].'</option>';
}
echo '</select>';

See an example fiddle

文档: http://php.net/manual/en/function.str-repeat.php

关于php - 在树结构中显示表格中的类别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41424663/

相关文章:

mysql - count(*) 查询问题

javascript - 使用 jQuery 加载 POST 表单

php - 在 MYSQL 中使用 SELECT MAX(id) 而不是在 PHP 中使用 mysql_insert_id() 有多糟糕?

php - 密码重置后端功能

php - PHP 5.2 中的类继承 : Overriding static variable in extension class?

mysql - 无法批量分配 protected 属性 : time_zone

mysql - 如何在 SSIS 中定义 MySQL 变量

sql - mysql查询计划中的意外索引扫描

php - 将可变长度 URL 映射到数字 (0...3) 的简单哈希函数

php - mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows 等...期望参数 1 是资源