導航:首頁 > 編程語言 > php樹狀菜單

php樹狀菜單

發布時間:2022-06-03 18:12:06

php(菜單的製作,怎麼用遞歸)

現在國內很多個人站長都要求無限級菜單,但其實真正商業用,2級或3級菜單足夠了。無限級沒有意義,而且遞歸太耗CPU,其實是不足取的。
不過既然問了,還是說一下無限級菜單的原理吧:
1、資料庫結構:只有三個欄位是必須的:
id:菜單編號
title:菜單標題
pid:上級菜單
2、生成數組:
如果只是用於菜單顯示的話,數組可以根據上級分類來取:寫一個getArray(pid)的函數,根據上級菜單是什麼,來取得同級菜單。頂級菜單的pid是0,如果取得的數據為空,那麼就是沒有子菜單。
原理就這么簡單。你網上看源碼,還會有各種其它需求,比如一次樹狀列出所有菜單等等,所有源碼就會顯得很復雜。自己根據我說的原理寫,相對還是簡單的,只是做flash菜單的話,不需要遞歸。
最好讓你老闆確定菜單層數,這樣寫起來會容易得多。

❷ 【急】php Smarty 二維樹形菜單

php文件
<?php
$tpl
=
New
Smarty();
$Class
=
array(array("bigid"
=>
"1","bigname"
=>
"糧油2","Small"
=>
array(array("ID"
=>
"1","Name"=>"稻穀"),array("ID"
=>
"2","Name"=>"麥類"),array("ID"
=>
"3","Name"=>"玉米"),array("ID"
=>
"4","Name"=>"花生"),array("ID"
=>
"5","Name"=>"豆類"))),array("bigid"
=>
"2","bigname"
=>
"蔬菜及製成品","Small"
=>
array(array("ID"
=>
"1","Name"=>"竹筍類"),array("ID"
=>
"2","Name"=>"花菜類"),array("ID"
=>
"3","Name"=>"芥菜類"),array("ID"
=>
"4","Name"=>"甘藍類"),array("ID"
=>
"5","Name"=>"綠葉綠葉綠葉類"),array("ID"
=>
"6","Name"=>"綠葉綠葉綠葉類"),array("ID"
=>
"7","Name"=>"綠葉類"))),array("bigid"
=>
"3","bigname"
=>
"蔬菜及製成品","Small"
=>
array(array("ID"
=>
"1","Name"=>"竹筍類"),array("ID"
=>
"2","Name"=>"花菜類"),array("ID"
=>
"3","Name"=>"芥菜類"),array("ID"
=>
"4","Name"=>"甘藍類"),array("ID"
=>
"5","Name"=>"綠葉綠葉綠葉類"),array("ID"
=>
"6","Name"=>"綠葉綠葉綠葉類"),array("ID"
=>
"7","Name"=>"綠葉類"))));
$tpl->
assign("Class",$Class);
?>
tpl文件
<ul
id="cla_cen">
<li>
{*產品分類*}
{section
name=big
loop=$Class}
<h4><a
href="#Big{$Class[big].bigid}">{$Class[big].bigname}</a></h4>
{section
name=small
loop=$Class[big].Small}
<a
href="#Small{$Class[big].Small[small].ID}">{$Class[big].Small[small].Name}</a>
|
{/section}
<br>
{/section}
</li>
</ul>

❸ 在php後台中如何實現頁面左側常用的樹狀多級菜單呢如果可以的說下原理並留下一個實例吧。謝謝了!

感覺隨便找個網上的後台管理系統都有代碼吧?

❹ Thinkphp框架如何實現 頁面左側是樹形菜單,右側顯示點擊樹形菜單的響應結果。

jquery,用這個吧,bootstrap有示例代碼的

❺ 誰有詳細php 下拉菜單代碼

這是我自己用的一段代碼,你自己改一下,點一下一級文本框,它所屬的文本框會收起或伸展。
<SCRIPT language=javascript>
<!--
function menu_tree(meval)
{
var left_n=eval(meval);
if (left_n.style.display=="none")
{ eval(meval+".style.display='';"); }
else
{ eval(meval+".style.display='none';"); }
}
-->
</SCRIPT>
<TABLE class=navi cellSpacing=1 align=center border=0>
<TBODY>
<TR>

<TH>後台 >> 新聞分類</TH></TR></TBODY></TABLE><BR>

<table border=0 cellspacing=1 align=center class=form>
<tr>
<th colspan="2">添加分類</th>
</tr>
<form action="" method="post">

<tr>
<td colspan="2" align="center" height='30'>

<select name="fid">
<option value="0">添加大類</option>
<?php
$query=$db->findall("shipin where fid=0");
while ($row=$db->fetch_array($query)){
$new_class_arr[$row[id]]=$row[name];
echo "<option value=\"$row[id]\">$row[name]</option>";
}

?>

</select>
<input type="text" name="name" value="">
<input type="submit" name="into_class" value="添加分類"/>

</td>
</form>
</tr>
</table>
<br>

<table border=0 cellspacing=1 align=center class=form>
<tr>
<th colspan="2">系統分類</th>
</tr>
<?php
foreach ($new_class_arr as $id=>$val){
?>
<tr>
<td onClick ="javascript:menu_tree('left<?=$id ?>');" >
<form action="" method="post">
<IMG src="images/menu.gif" align=absMiddle border=0>
<input type="hidden" name="id" value="<?php echo $id?>">
<input type="text" name="name" value="<?php echo $val?>">
<input type="submit" name="update_class" value="更新"/>
<input type="button" value="刪除" onclick="location.href='?del=<?php echo $id?>'"/>
</form>
</td>
</tr>
<tr id=left<?=$id ?>>
<td>
<table >
<tbody>
<?php
$query_fid=$db->findall("shipin where fid=$id");
while ($row_fid=$db->fetch_array($query_fid)){

?>

<tr>
<td>
<form action="" method="post">
<IMG src="images/menu.gif" align=absMiddle border=0>
<input type="hidden" name="id" value="<?php echo $row_fid[id]?>">
<input type="text" name="name" value="<?php echo $row_fid[name]?>">

<input type="submit" name="update_class" value="更新"/>
<input type="button" value="刪除" onclick="location.href='?del=<?php echo $row_fid[id]?>'"/>
</form>
</td></tr>
<?php }?>
</tbody>
</table>
</td>

</tr>

<?php
}
?>
</table>

</BODY></HTML>

❻ PHP聯動菜單

這個不是聯動菜單,只是一個簡單的三級樹,或者說其是個二級樹!要代碼你可以在網路上搜索二級樹js很多很多!
祝你進步!!

❼ php+mysql 做樹形可折疊二級菜單怎麼做超高分啊!求助!!!

在循環裡面再次查詢,也就是你第一個查詢語句里的cid,它就是子分類的父ID

❽ php如何分頁顯示樹狀結構數據

分頁了還怎麼顯示樹狀?能顯示 但是很難看 ,看不出效果了,我寫後台菜單管理從來不分頁,phpcmsV9 也沒有分頁 。我推薦使用 tree.class.php phpcmsV9 的一個擴展類文件,可以看看怎麼使用。如圖 我就是直接顯示的:

閱讀全文

與php樹狀菜單相關的資料

熱點內容
防火牆配置伺服器熱備的虛擬地址 瀏覽:188
linux安裝xdm 瀏覽:736
java計算12 瀏覽:249
大金空調擺動式壓縮機 瀏覽:453
新的雲伺服器如何設置首頁 瀏覽:687
javastring字元位置 瀏覽:196
銀河麒麟字體庫存在哪個文件夾 瀏覽:956
魔獸加丁伺服器的航空叫什麼 瀏覽:152
花冠改裝案例哪個app多 瀏覽:515
成績單app哪個好用 瀏覽:140
北美程序員vs國內程序員 瀏覽:181
php解析xml文檔 瀏覽:121
石墨文檔APP怎麼橫屏 瀏覽:185
牆主鋼筋加密和非加密怎麼看 瀏覽:144
金山區文件夾封套定製 瀏覽:708
soho程序員 瀏覽:672
java位元組截取 瀏覽:526
php提交作業 瀏覽:816
房產還沒解壓可以辦理贈予嗎 瀏覽:224
java毫秒轉分鍾 瀏覽:753