创建动态php导航栏
我正在尝试使用和使用一个简单的模板引擎创建一个动态php导航栏。 我能够创建动态导航,但在尝试创建下拉菜单时遇到了问题! 问题是每个主项都有许多子项,但当我运行脚本时,每个主项都会得到与其他主项相同的子项 是这样的创建动态php导航栏,php,Php,我正在尝试使用和使用一个简单的模板引擎创建一个动态php导航栏。 我能够创建动态导航,但在尝试创建下拉菜单时遇到了问题! 问题是每个主项都有许多子项,但当我运行脚本时,每个主项都会得到与其他主项相同的子项 是这样的 main item 1 have sub item 1 main item 1 have sub item 2 main item 2 have sun item 3 main item 1 | main item 2 | main item 3 | sun item 1
main item 1 have sub item 1
main item 1 have sub item 2
main item 2 have sun item 3
main item 1 | main item 2 | main item 3 |
sun item 1 | sun item 2 | sun item 3 |
当我运行脚本时,我得到了
main item 1 | main item 2 | main item 3 |
sun item 1 | sun item 1 | sun item 1 |
sun item 2 | sun item 2 | sun item 2 |
sun item 3 | sun item 3 | sun item 3 |
我需要这样
main item 1 have sub item 1
main item 1 have sub item 2
main item 2 have sun item 3
main item 1 | main item 2 | main item 3 |
sun item 1 | sun item 2 | sun item 3 |
我的密码
$site_page_request = mysql_query("select * from pages where parent_id_sec='' order by navigation_order ASC");
$page_title = "page_title_lang_2";
$query_string = "query_string_lang_2";
while ($main_object = mysql_fetch_array($site_page_request)) {
$links[] = array('link-name' = > $main_object[$page_title], 'link-link' = > "$site_link/".$main_object[$query_string].
"/");
$site_page_request2 = mysql_query("select * from pages where parent_id_sec='$main_object[id_sec]' order by navigation_order ASC");
while ($main_object2 = mysql_fetch_array($site_page_request2)) {
$links2[] = array('link-name2' = > $main_object2[$page_title], 'link-link2' = > "$site_link/".$main_object[$query_string].
"/".$main_object2[$query_string].
"/");
}
}
foreach($links as $links) {
$row = new Template("style/template/navigation-row.tpl");
foreach($links as $key = > $value) {
$row - > set($key, $value);
}
$navigationTemplates[] = $row;
}
$navigationContents = Template::merge($navigationTemplates);
$navigationList = new Template("style/template/navigation.tpl");
$navigationList - > set("row", $navigationContents);
$layout - > set("navigation", "$navigationContents");
$layout - > set("navigation", $navigationList - > output());
foreach($links2 as $links2) {
$row2 = new Template("style/template/navigation-dropdown-row.tpl");
foreach($links2 as $key = > $value) {
$row2 - > set($key, $value);
}
$navigationTemplates2[] = $row2;
}
$navigationTemplates2 = Template::merge($navigationTemplates2);
$navigationList2 = new Template("style/template/navigation-dropdown.tpl");
$navigationList2 - > set("row2", $navigationTemplates2);
$layout - > set("navigation2", "$navigationTemplates2");
$layout - > set("navigation2", $navigationList2 - > output());
任何人都知道我该怎么做
谢谢 不确定这是您的问题,但我会更改
foreach
迭代器,使其名称不相同。所以` foreach($links as$link)。。。foreach($key=>$value的链接)。。。和$links2类似。谢谢,但它不起作用,我仍然有相同的问题。您可以添加一些调试echo
s,以确定您是否在DB查询中获取错误的数据或操作错误。你能用你当前的代码更新你的帖子吗?嗨,我添加了echo
,没有出现错误,对于代码我应该发布哪一个?我发布了当前的一个,我有你的代码在张贴仍然看起来是错误的。。。另外,当我建议回显DB数据时,您应该返回一些数据(可能是您试图构建的子菜单条目)。您是否可以尝试所有这些,然后用这些代码(其中的调试语句和链接已修复)和输出结果更新您的帖子?