我想用php和mySQL创建一个无序列表的流程图。php mySQL的无序列表(流程图)
表 - 问题
ID |问题| answer_id
表 - 答案
ID |回答| question_id
每个问题都有一个answer_id的引用。并且answer_id引用了question_id(请参阅附加图像)。
到目前为止,PHP:
// Starts with the first question (answer_id=0)
$sql = db_query("SELECT * FROM questions WHERE answer_id='0'");
while ($row = mysqli_fetch_assoc($sql)){ ?>
<ul>
<li>
<?php echo $row['question'];
$question_id = $row['id'];
}
$sql = db_query("SELECT * FROM answers WHERE question_id='$question_id'");
while ($row = mysqli_fetch_assoc($sql)){
$question_id = $row['id'];
?>
<ul>
<li>
<?php echo $row['answer'];?>
<?
$answer_id = $row['id'];
$sqlf = db_query("SELECT * FROM questions WHERE answer_id='$answer_id'");
while ($rowf = mysqli_fetch_assoc($sqlf)){ ?>
<ul>
<li>
<?php echo $rowf['question'];?>
</li>
<?
$question_id = $rowf['id'];
$sqls = db_query("SELECT * FROM answers WHERE question_id='$question_id'");
while ($rows = mysqli_fetch_assoc($sqls)){ ?>
<ul>
<li>
<?php echo $rows['answer'];?>
</li>
</ul>
<?
}
}
}
我对这个总BRAINFREEZE。我如何得到一个循环来打印带有孩子答案和孩子问题等问题?
我想你应该看看递归函数:) – Naruto
听起来像是一个不错的选择。但哼? :D – Stichy
[在PHP中将所有行元素打印为树]可能的重复(http://stackoverflow.com/questions/17989186/printing-down-all-row-elements-as-tree-in-php) – Naruto