php dynamisches Menü


 
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Hilfe für Webmaster -> PHP / MySQL
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Miss Mila
Mitglied

Beitragphp dynamisches Menü Antworten mit Zitat

Hallo,
ich habe ein kleines Problem mit meinem PHP-Code.
Im Ergebnis sollen die Hauptmenüpunkte voneinander getrennt werden. Wer kann mir helfen?

PHP-Code:
Code:
<?

$siteRoot="/";

//Menue Start

$menuStruct=array(
"Home"=>array("root"=>$siteRoot."index.php"),

//Menue End
//Menue Start

"News"=>array("root"=>$siteRoot."news.php",
   "Aktuell"=>$siteRoot."aktuell.php",
         "Archiv"=>$siteRoot."archiv.php"),);

//Menue End
//Menue Start

"weiter"=>array("root"=>$siteRoot."weiter.php",
   "noch weiter"=>$siteRoot."noch weiter.php",
         "noch weiter"=>$siteRoot."noch weiter.php"),);

//Menue End

if($PHP_SELF == $menuStruct[0]['root']){
  foreach($menuStruct as $key=>$value){
    if($PHP_SELF == $value['root']){
       echo "<div class=\"fstLevelActive\"><a href=".$value['root'].">$key</a></div>\n";
    }
    else{
       echo "<div class=\"fstLevel\"><a href=".$value['root'].">$key</a></div>\n";
    }
  }
} else {
  foreach($menuStruct as $key=>$value){
    if($PHP_SELF == $value['root']){
       echo "<div class=\"fstLevelActive\"><a href=".$value['root'].">$key</a></div>\n";
    }else{
       echo "<div class=\"fstLevel\"><a href=".$value['root'].">$key</a></div>\n";
    }
    foreach($value as $key2=>$value2){
      if(array_search($PHP_SELF,$value)){
        if($key2 != "root")
           if($PHP_SELF == $value2){
              echo "<div class=\"secLevelActive\"><a href=".$value2.">$key2</a></div>\n";
           }else{
              echo "<div class=\"secLevel\"><a href=".$value2.">$key2</a></div>\n";
           }
      }
    }
  }
}
?>
04 Jun 2006 16:22
Benutzer-Profile anzeigen Private Nachricht senden
wpSEO, das Plugin für WordPress SEO
V4hn
Moderator

Beitrag Antworten mit Zitat

also entweder du hast dir das irgendwie aus vorhandenem Code zusammengeschustert,
oder ich weiß auch nicht^^
hab mal die Fehler darin korrigiert und unnötiges entfernt...
PHP-Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
$siteRoot
="/";

//Menue Start

$menuStruct=array(
    
"Home"=>array(
        
"root"=>$siteRoot."../",
        
"test"=>$siteRoot."test.php"),
    
"News"=>array(
        
"root"=>$siteRoot."news.php",
        
"Aktuell"=>$siteRoot."aktuell.php",
        
"Archiv"=>$siteRoot."archiv.php"),
    
"weiter"=>array(
        
"root"=>$siteRoot."weiter.php",
        
"noch weiter"=>$siteRoot."noch weiter.php",
        
"noch weiter"=>$siteRoot."noch weiter.php")
);

//Menue End
foreach($menuStruct as $key=>$value){
    if(
$PHP_SELF == $value['root'])
        echo 
"<div class=\"fstLevelActive\"><a href=".$value['root'].">".$key."</a></div>\n";
    else
        echo 
"<div class=\"fstLevel\"><a href=".$value['root'].">".$key."</a></div>\n";
    
    if(
array_search($PHP_SELF,$value)){
        foreach(
$value as $key2=>$value2){
            if(
$key2 != "root")
                if(
$PHP_SELF == $value2)
                    echo 
"<div class=\"secLevelActive\"><a href=".$value2.">".$key2."</a></div>\n";
                else
                    echo 
"<div class=\"secLevel\"><a href=".$value2.">".$key2."</a></div>\n";
        }
    }
}
?>

_________________


Zuletzt bearbeitet von V4hn am 05 Jun 2006 09:58, insgesamt einmal bearbeitet
04 Jun 2006 18:04
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Miss Mila
Mitglied

Beitrag Antworten mit Zitat

Schon einmal DANKE!

Unter http://www.delaris.de/xphpmenue/index.php ist so ein Menü was ich meine. Hier sind die Main-Kategorien in der config.menue.php getrennt und das erscheint dann auch so im Browser.
Leider bin ich nicht so fit in php das ich so etwas hin bekomme. Ich könnte zwar das Menü von delaris so einbauen, aber das passt nicht in mein Konzept. Außerdem wollte ich ein einfaches Script und das von delaris ist mir im Detail zu viel.
Ansonsten habe ich in CSS formatiert:
Leider bekomme ich die Abstände nicht so hin wie ich es gerne hätte, daher kam mir die Idee mit den getrennten Main-Kategorien im php-script.


/************************************************
*************FIRST_LEVEL*************************
************************************************/
/*Style-Definition für die First-Level-Navigation*/
DIV.fstLevel a
{
TEXT-DECORATION: none;
DISPLAY: block;
WIDTH: 120;
PADDING: 3px;
MARGIN: 1px 0 10px 0px;
FONT-FAMILY: verdana, arial, helvetica;
FONT-SIZE: 12px;
FONT-WEIGHT: bold;
TEXT-ALIGN: left;
COLOR: #000000;
BACKGROUND-COLOR: #FFE4B5;
border-bottom: 1px solid #C5C877;
border-right: 1px solid #C5C877;
}
/*Style-Definition für die First-Level-Navigation bei Mouse-Over*/
DIV.fstLevel a:hover
{
COLOR: Maroon;
BACKGROUND-COLOR: #F4A460;

}
/*Style-Definition für die First-Level-Navigation bei aktivem Link*/
DIV.fstLevelActive a
{
TEXT-DECORATION: none;
DISPLAY: block;
WIDTH: 120;
BORDER: 1px solid #793D11;
PADDING: 3px;
MARGIN: 1px 0 0px 0;
FONT-FAMILY: verdana, arial, helvetica;
FONT-SIZE: 12px;
FONT-WEIGHT: bold;
TEXT-ALIGN: left;
COLOR: Maroon;
BACKGROUND-COLOR: transparent;
}

/************************************************
*************SECOND_LEVEL*************************
************************************************/
/*Style-Definition für die Second-Level-Navigation*/
DIV.secLevel a
{
TEXT-DECORATION: none;
DISPLAY: block;
WIDTH: 120;
PADDING: 3px;
MARGIN: 1px 0 10px 0px;
FONT-FAMILY: verdana, arial, helvetica;
FONT-SIZE: 10px;
FONT-WEIGHT: normal;
TEXT-ALIGN: left;
COLOR: #000000;
BACKGROUND-COLOR: #FFDAB9;
border-bottom: 1px solid #C5C877;
border-right: 1px solid #C5C877;
}
/*Style-Definition für die Second-Level-Navigation bei Mouse-Over*/
DIV.secLevel a:hover
{
COLOR: #D2691E;
BACKGROUND-COLOR: #FFFFFF;
}
/*Style-Definition für die Second-Level-Navigation bei aktivem Link*/
DIV.secLevelActive a
{
TEXT-DECORATION: none;
DISPLAY: block;
WIDTH: 120;
BORDER: 1px solid #FF0000;
PADDING: 3px;
MARGIN: 1px 0 10px 0px;
FONT-FAMILY: verdana, arial, helvetica;
FONT-SIZE: 10px;
FONT-WEIGHT: normal;
TEXT-ALIGN: left;
COLOR: #000000;
BACKGROUND-COLOR: #FFFFFF;
}
04 Jun 2006 18:47
Benutzer-Profile anzeigen Private Nachricht senden
V4hn
Moderator

Beitrag Antworten mit Zitat

Die Kategorien sind zwar nicht so übersichtlich getrennt,
wie in delaris, aber getrennt sind sie auch ordentlich...
hab jetzt keine Zeit, um mir die Stylesheets anzusehen,
aber der Code sollte ok sein, so wie er ist...
Wenn du jetzt noch ein bisschen mit CSS rumspielst,
dann sieht das auch ganz gut aus Razz

_________________
05 Jun 2006 10:04
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Miss Mila
Mitglied

Beitrag Antworten mit Zitat

Hallo! Trotzdem Dankeschön für dein Statement. Ich werde mich dann wohl doch mal intensiver mit der Problematik beschäftigen müssen. Vielleicht bekomme ich es ja hin und kann dann berichten!

Gruß
M M

Type
05 Jun 2006 16:07
Benutzer-Profile anzeigen Private Nachricht senden
axinio Internet Marketing
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Hilfe für Webmaster -> PHP / MySQL Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  

Ähnliche Beiträge
Thema Webmaster Forum Antw. Autor Verfasst am
Keine neuen Beiträge Auswahlliste-Menü als Hyperlink Hilfe für Webmaster 2 Marco 27 Mai 2011 15:34 Letzten Beitrag anzeigen
Keine neuen Beiträge Problem mit php-Menü PHP / MySQL 1 Patrick 23 Nov 2010 13:49 Letzten Beitrag anzeigen
Keine neuen Beiträge Arghhh- bitte Hilfe zu Horizontales ... Javascript 4 Rotlocke 26 Aug 2010 15:51 Letzten Beitrag anzeigen
Keine neuen Beiträge Menü 7 - Was mache ich falsch? Javascript 2 Gast Caro 16 Mai 2010 13:40 Letzten Beitrag anzeigen
Keine neuen Beiträge Drop down - Menü in Frames CSS 2 LadyMalia 30 Jan 2010 11:23 Letzten Beitrag anzeigen