我在 MySQL 中有两个表,categories
和 subcategories
,我使用它们来填充下拉列表。
我想要的排列是这样的;当选择特定类别时,下拉项目应根据主类别
问题:选择类别时,下拉项是相同的 对所有父类别都如此
这是我用来从数据库获取类别的方法
public function get_categories($category_table)
{
// PURPOSE: get categories from the database
$sql = "SELECT * FROM $category_table";
$conn = $this->mysql_conn;
$result = $conn->query($sql);
while ($row = $result->fetch_assoc()) {
// var_dump($row['category_name']);
$html = '<a href="#" class="dropdown-toggle list-group-item" data-toggle="dropdown">' . $row["category_name"] . '<span class="caret"></span></a>
<ul class="dropdown-menu">';
//PURPOSE: get subcategories from database and pass it to the get_categories method
$subsql = "SELECT subcategory_name FROM subcategories WHERE category_id={$row['id']}";
$conn = $this->mysql_conn;
$subresult = $conn->query($subsql);
while ($subrow = $subresult->fetch_assoc()) {
// extract($subresult);
// echo $subrow['subcategory_name'] . "<br>";
$subcat_name = array();
$subcat_name = $subrow['subcategory_name'];
// var_dump($subrow);
$html .= '<li><a href="#">' . $subcat_name . '</a></li>';
}
$html .= '</ul>';
echo $html;
}
}
这是我插入此方法的 html
<div class="dropdown list-group">
<a href="#" class="list-group-item">Latest Products</a>
<?php $store->get_categories('categories'); ?>
</div>
最佳答案
您使用的列表的行为类似于下拉列表。这将需要一些花哨的 JavaScript 和 CSS。您使用哪个库(如果有)来实现自动化。
我使用 Bootstrap Bootstrap dropdown documentation
关于php - 无法根据 PHP 中的类别显示来自 MySQL 的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46061218/