Hallo Gemeinde,
ich steh vor einem Problem wo einfach nicht mehr weiter komme. Ich suche nach Lösung für ein Dynamisches Menü mit Untermenü gefüttert aus der Datenbank.
Bestes Beispiel einfach mal gesagt
Verein 1 oder
Verein 2
Diese Seiten bassieren auf den
scipmanager für Vereine wo ich die Menüsteuerung interessant finde.
Beim Klick auf den ersten Hauptmenüpunkt gehts passende Untermenü auf aber auch gleichzeitig schon die erste Seite vom Untermenü. Allerdings soll das ganze dynamisch von der Datenbank kommen da sich die Anzahl der Untermenüpunkte auch ändern kann.
Da auch bei den Seiten nur der passende Inhalt included wird und ich auch für die Zukunft keine Lust habe jede Seite zu ändern wenn sich eine Fuß- oder Kopfzeile ändert, würde ich den Inhalt der geladen wird mit Include lösen wollen.
Den einzelnen Inhalt über Include bekomm ich soweit auch hin
Code für Inhalt mitte
PHP-Code:
<?PHP
if($_GET["id"])
{
include($_GET["id"]);
}
else
{
include("includes/index.php");
}
?>
$_GET['id'] kommt von der Untermenue.php
PHP-Code:
<?php
$query_untermenu = "SELECT
menu.name,
menu.sortieren,
menu.url
FROM
menu
WHERE
menu.parent = '1' AND
menu.anzeigen = 'ja'
ORDER BY
menu.sortieren ASC";
$untermenu = mysql_query($query_untermenu) or die(mysql_error());
$siteRoot="?id=";
while($row = mysql_fetch_assoc($untermenu))
{
$menuStruct[] = array($row['name'],'root'=>$siteRoot.$row['url']
);
}
$aktuell = $HTTP_GET_VARS["id"];
$url = $siteRoot.$aktuell;
foreach($menuStruct as $key=>$value)
{
if($url == $value['root'])
{
echo "<a class=\"hauptmenu\" href=".$value['root'].">nur ein test</a>\n";
}
else
{
echo "<a class=\"hauptmenu\" href=".$value['root'].">$value[0]</a>\n";
}
}
?>
Das ganze funktioniert soweit auch ganz gut, ohne das jedes mal die komplette Seite neu geladen wird.
Das erstes Problem ist einfach, dass ich die zugehörigkeit der Untermenüs "parent" nicht dynamisch zugeordnet bekomme vom Hauptmenü
Mein Hauptmenü pflege ich im Moment über die hauptmenue.php ein
PHP-Code:
<?php
$query_hauptmenu = "SELECT
menu.name,
menu.sortieren,
menu.url
FROM
menu
WHERE
menu.parent = '0' AND
menu.anzeigen = 'ja'
ORDER BY
menu.sortieren ASC";
$hauptmenu = mysql_query($query_hauptmenu) or die(mysql_error());
?>
<table>
<tr>
<?php while ($row = mysql_fetch_assoc($hauptmenu)) { ?>
<td>
<a href="<?php echo $row['url']; ?>"><?php echo $row['name']; ?></a></td>
<?php } ?>
</tr>
</table>
parent="0" in der Datenbank ist quasi mein Hauptmenü, die Eltern sozusagen.
Meine Datenbank sieht momentan wie folgt aus
ID | Name | Parent | url | sortieren | anzeigen
1 | menu 1 | 0 | url.php | 1 | 1
2 | menu 2 | 0 | url.php | 2 | 1
3 | menu 3 | 0 | url.php | 3 | 1
4 | umenu1 | 1 | url.php | 1 | 1
5 | umenu2 | 1 | url.php | 1 | 1
ect...
im moment finde ich einfach keine Lösung das Untermnü dort mit einzubinden, dass es wie wie auf den oben angegebenen verlinkten Seiten aussieht.
Ich hoffe ihr könnt mir ein wenig weiterhelfen.