Php 多列表函数无法正常工作
我的职能:Php 多列表函数无法正常工作,php,mysql,Php,Mysql,我的职能: function m_gen($n) { $q = mysql_query("select * from nume where parentid = '$n'"); if (mysql_num_rows($q) > 0) { echo "<ul>\n"; while ($r = mysql_fetch_assoc($q)) { echo "<li>".$r['title'].m_ge
function m_gen($n) {
$q = mysql_query("select * from nume where parentid = '$n'");
if (mysql_num_rows($q) > 0) {
echo "<ul>\n";
while ($r = mysql_fetch_assoc($q)) {
echo "<li>".$r['title'].m_gen($r['id'])."</li>\n";
}
echo "</ul>\n";
} else {
echo "";
}
}
生成以下结果:
调用该函数时,HTML编写不正确
结果应该是:
<li>main3
<ul>
<li>sub main3 > main1</li>
<li>sub main3 > main2</li>
<li>sub main3 > main3</li>
<li>sub main3 > main4</li>
<li>sub main3 > main5</li>
<li>sub main3 > main6</li>
</ul>
</li>
main 3
- 子main3>main1
- 辅助主3>主2
- sub main3>main3
- 辅助主3>主4
- 辅助主3>主5
- 子main3>main6
但是,情况是这样的:
m_gen(0);
<ul>
<li>sub main3 > main1</li>
<li>sub main3 > main2</li>
<li>sub main3 > main3</li>
<li>sub main3 > main4</li>
<li>sub main3 > main5</li>
<li>sub main3 > main6</li>
</ul>
<li>main3</li>
- 子main3>main1
- 辅助主3>主2
- sub main3>main3
- 辅助主3>主4
- 辅助主3>主5
- 子main3>main6
缅因州3
这个函数有什么问题
我试图找到一个解决办法,但没有得到结果
(pass:nume)不,不应该是这样,因为当你这样做时:
echo "<li>".$r['title'].m_gen($r['id'])."</li>\n";
echo“”$r['title'].m_gen($r['id'])。“ \n”;
首先,它执行m_gen函数(如果有更多的级别,则再次递归),在最后一个级别它进行回音(因为递归函数中有回音),然后返回“父级”,调用它的函数,该函数进行回音,依此类推
您应该这样做:
echo "<li>".$r['title'];
m_gen($r['id']);
echo "</li>\n";
echo“”$r['title'];
m_gen($r['id']);
回声“ \n”;
@Chris,谢谢你纠正我的问题