我有一個包含21個主要項目的菜單,其中大多數都有自己的子項目。 我希望能夠僅顯示其中的第一個'16' - $menu_number['VALUE']
在數據庫中包含此值,因此只有前16個將正常顯示,其餘部分應該在放置後的「More」項下可用第16個主要項目,其中將包含其餘項目及其子項目。PHP Count然後在16日後添加內容
這是現在:
首頁
服務>服務1,服務2
組合>組合1,組合2
.....
項目>項目1,項目2,項目3
關於我們>子項目1,子項2
聯繫>子項目1,子項2
這是應該的樣子:
首頁
服務>服務1,服務2
組合>組合1,組合2
.....
個項目>項目1,項目2,項目3
更多>關於我們(>子ITEM1,子ITEM2),聯繫(>子ITEM1,子ITEM2)
這是當前的代碼:
$menu_number = mysql_fetch_array($menu_number, MYSQL_ASSOC);
echo $menu_number['VALUE'];
$counter = 0;
$sql = "SELECT * FROM $tablename WHERE `Parent` = '0' AND Type LIKE 'top' ORDER BY `Order` ASC";
$result = mysql_query($sql) or die ("Error: Query Failed! " .mysql_error());
$output = "<nav><ul>";
while ($rs = mysql_fetch_array($result)) {
$rs['Link'] = preg_replace('/\|.*$/','',$rs['Link']);
$output .= "<li class='menu_top' id='".$rs['ID']."'><a href='".$rs['Link']."'>".$rs['Name']."</a>".++$counter;
$sql2 = "SELECT * FROM $tablename WHERE `Parent` = '".$rs['ID']."' ORDER BY `Order` ASC";
$result2 = mysql_query($sql2) or die ("Error: Query Failed! " .mysql_error());
if (mysql_num_rows($result2) != 0) {
$output .= "<ul class='menu_sublinks' id='".$rs['ID']."'>";
while ($rs2 = mysql_fetch_array($result2)){
$rs2['Link'] = preg_replace('/\|.*$/','',$rs2['Link']);
$output .= "<li class='menu_sublink' id='".$rs['ID']."'><a href='".$rs2['Link']."'>".$rs2['Name']."</a></li>";
}
$output .= "</ul></li>";
}
}
$output .="</ul></nav";
我有一個計數器已經$counter
,現在我需要找到一個方法來添加<li>More</li>
和新<ul>
內,包含17 ... 21 <li>
..
我希望我解釋夠好,我試過了我這樣做,但我很困惑一點... 謝謝你的任何幫助..