Einzelnen Beitrag anzeigen
  #1  
Alt 20.04.2017, 10:03:32
schlappi schlappi ist offline
Anfänger
 
Registriert seit: Jun 2016
Alter: 37
Beiträge: 8
Haupt- Untermenü dynamisch aus Datenbank ala scipmanager

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.
Mit Zitat antworten