habe ein Problem:
Ich habe eine Seite erstellt in der 2 Homepages von 2 Häusern gewartet werden müssen. Die Struktur sieht in etwa so aus:
|-- Start
|-- Haus I
|-- Unterpunkt I
|-- Unterpunit i.i
|-- Unterpunkt II
|-- Haus II
|-- Unterpunkt I
|-- Unterpunit i.i
|-- Unterpunkt II
nun habe ich 2 Module: Haupt und Subnavi:
Navigation:
Code: Alles auswählen
<?php
$navitems = array();
function nav($idcat)
{
global $navitems, $client, $lang, $db, $cfg;
$db->query("SELECT parentid FROM ".$cfg["tab"]["cat"]." WHERE idcat='" . $idcat . "'");
$db->next_record();
$parentid = $db->f("parentid");
/**
* Top has reached,
* Recursion can be break
**/
if($parentid==0)
{
if($idcat!=1)
{
//$navitems=array();
//search for the idcat where I´m the parent
$sql = "SELECT A.idcat, C.name
FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C
WHERE A.idcat = B.idcat AND B.idcat = C.idcat AND B.idclient='$client' AND C.idlang='$lang'
AND C.visible='1' AND B.parentid='1' ORDER BY A.idtree";
$db->query($sql);
while ($db->next_record())
{
$navitems[$db->f("idcat")] = array("idcat"=>$db->f("idcat"),
"name"=>$db->f("name"));
}
}
return true;
}
// select idcats on the same level
// they have the same parent id
$sql = "SELECT A.idcat, C.name
FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C
WHERE A.idcat = B.idcat AND B.idcat = C.idcat AND B.idclient='$client' AND C.idlang='$lang'
AND C.visible='1' AND B.parentid='$parentid' ORDER BY A.idtree";
$db->query($sql);
while ($db->next_record())
{
$tmp_nav[$db->f("idcat")]['idcat'] = $db->f("idcat");
$tmp_nav[$db->f("idcat")]['name'] = $db->f("name");
}
// Add the old navigation array to the new one,
// because it is an item of the new one on place $idcat
$tmp_nav[$idcat]["sub"] = $navitems;
$navitems = $tmp_nav;
nav($parentid);
}
if(!isset($idcat)){
//set the start idcat
$idcat = 1;
}
//search for the idcat where I´m the parent
$sql = "SELECT A.idcat, C.name
FROM ".$cfg["tab"]["cat_tree"]." AS A, ".$cfg["tab"]["cat"]." AS B, ".$cfg["tab"]["cat_lang"]." AS C
WHERE A.idcat = B.idcat AND B.idcat = C.idcat AND B.idclient='$client' AND C.idlang='$lang'
AND C.visible='1' AND B.parentid='$idcat' ORDER BY A.idtree";
$db->query($sql);
while ($db->next_record()) {
$navitems[$db->f("idcat")] = array("idcat"=>$db->f("idcat"),
"name"=>$db->f("name"));
}
nav($idcat);
/**
* array $navitems enthält alle daten
* die für das aufbauen der navigation
* notwendig sind. **/
echo "<ul>\n";
foreach ($navitems as $key => $data)
{
$active = (is_array($data['sub'])) ? " class=\"active\"" : "";
$link = $sess->url( "front_content.php?idcat=" . $data['idcat']."&lang=".$lang."&client=".$client);
echo "<li><a" . $active . " href=\"" . $link . "\" title=\"" . $data['name'] . "\">" . $data['name'] . "</a></li>\n";
}
echo "</ul>\n";
?>
Code: Alles auswählen
<?php
/**
* array $navitems enthält alle daten
* die für das aufbauen der navigation
* notwendig sind. **/
foreach ($navitems as $key => $data) {
if (count($data['sub']) > 0) {
echo "<div id=\"subnavigation\">";
echo "<ul>\n";
foreach ($data['sub'] as $key => $data) {
$link = $sess->url("front_content.php?idcat=" . $data['idcat'] . "&lang=" . $lang . "&client=" . $client);
echo "<li><a href=\"" . $link . "\" title=\"" . $data['name'] . "\">" . $data['name'] . "</a></li>\n";
}
echo "</ul>\n";
echo "</div>";
}
}
?>
http://linux.glockenstuhl.at/content/cm ... 1&client=1
Unten rechts könnt ihr zwischen den 2 Seuten hin und herschalten.
Mit der Bitte um dringenden Hilfe
Alex Fill