好,我想在这里显示这个树状用mysql:无法获得多个SQL查询,以树形图PHP工作
http://jeroenvdv.github.io/BootstrapTreeView/
我有一个MySQL数据库,我需要从一个父名文本表,然后显示属于该parent_id的所有行。
像这样:
table = 'groups'
|unique_id|name |user_id |
| 1 | example | 1 |
| 2 | foo | 3 |
| 3 | bar | 2 |
table = 'entries'
|unique_id| entree_name |user_id | group_id |
| 1 | apples | 1 | 1 |
| 2 | oranges | 3 | 2 |
| 3 | entree_example | 2 | 3 |
基本上我需要的“组”是家长和条目是在正确的父母。
我的代码的问题是,我只得到'组'表和该表下的所有行的第一个结果。
这是我的草率代码,我仍在学习。
<?php
$user = $_SESSION['app']['user_id'];
$mysqli = new mysqli("localhost", "user", "pass", "db_name");
$sql = "SELECT * FROM groups WHERE user_id = '$user'";
if(!$result = $mysqli->query($sql)){
die('There was an error running the query [' . $mysqli->error . ']');
}
else
{
echo '<div class="well">
<ul class="list-group tree">
<li class="list-group-item"><input type="checkbox" /><label class="tree-toggle tree-parent">Logged In User's Name<span class="icon-chevron-down"></span></label>
<ul class="list-group tree">';
while($row = $result->fetch_assoc()){
$group = $row['id'];
$sql = "SELECT * FROM entries WHERE group_id = '$group'";
?>
<li class="list-group-item"><input type="checkbox" /><label class="tree-toggle tree-parent"><?php echo $row['name']; ?><span class="icon-chevron-down"></span></label>
<ul class="list-group tree">
<?php
if(!$result = $mysqli->query($sql)){
die('There was an error running the query [' . $mysqli->error . ']');
}
while($row = $result->fetch_assoc()){
echo '<li class="list-group-item"><label><input type="checkbox" />'; echo " " . $row['id']. " - " . $row['entree_name']; echo '</label></li>';
}
?>
</ul>
</li>
<?php
}
}
?>
</ul>
</li>
</ul>
</div>
我的问题是我只得到一个父(通过查询找到的第一个),并将该父组下的所有条目加载到树中。我知道我所做的事是错误的。但我不知道。帮帮我!