再帰的ディレクトリ ツリー、UL LI の適用方法
この投稿は XingGuangYingYing によって最終編集されました: 2013-04-15 08:18:54
function nav($parent){
$sql = mysql_query("親 = '$parent' のメニューから * を選択");
while($row = mysql_fetch_array($sql)){
echo '
'.$row['name'].'';
nav($row['id']);
echo '';
}
}
UL 出力をサブクラスに適用するにはどうすればよいですか?
こんな感じ
映画
書籍
-----解決策--------------------------------
クエリと出力を同時に行うため、現在のノードに子ノードがあるかどうかはわかりません (まだ読み込まれていないため)
したがって、クエリ結果を配列 http://bbs.csdn.net/topics/390364669
に読み取る必要があります。
次に、再帰的に
を出力します。
変数を使用して出力するコンテンツをキャッシュし、再帰が終了したときにそれを出力することもできます
呼び出されたとき
echo nav($id);
Ajax を使用して動的にロードするため、再帰はありません。
function nav($parent){<br />
$res = '';<br />
$sql = mysql_query("select * from menu where parent = '$parent'");<br />
while($row = mysql_fetch_array($sql)){<br />
$res .= '<li><a href="'.$row['id'].'">'.$row['name'].'</a>';<br />
$t = nav($row['id']);<br />
if(! empty($t)) $res .= "<ul>$t</ul>";<br />
$res .= '</li>';<br />
}<br />
return $res;<br />
}
ログイン後にコピー
少なくとも今のあなたにはふさわしくありません