menüscript für benutzung von parametern modifizieren
Verfasst: 13.04.2006 14:10
hallo,
ich habe im internet ein menüscript gefunden und es mir in die HP eingebaut. dies ist die dynmenu2.php
das script funktioniert wunderbar! klappt alles wie gewollt, aber...
wenn ich (wie zB bei gesell.php) parameter mitsenden will, wird die seite zwar aufgerufen, aber das untermenü (in diesem fall "kooperation") wird nicht dargestellt weil der string ja nicht dem dateinamen entspricht.
nun habe ich mir überlegt den string auf das fragezeichen hin zu untersuchen und an dieser stelle zu teilen, um mit dem linken teil die seite zu definieren (für das menü) und mit dem kompletten teil den link darzustellen.
ich hab mir nu schon stunden den kopf zerbrochen und einiges rumprobiert, aber ich bekomm es einfach net hin. leider sind meine php kenntnisse auch net so dolle, weshalb ich auch leider nicht alles im script nachvollziehen kann und auch nicht weiß an welcher stelle ich das am besten wie einbaue.
deshalb baue ich auf euch und hoffe auf eure hilfe.
ich habe im internet ein menüscript gefunden und es mir in die HP eingebaut. dies ist die dynmenu2.php
Code: Alles auswählen
<?
$siteRoot= substr_replace ($_SERVER["PHP_SELF"], "",strrpos ($_SERVER["PHP_SELF"], "/")+1);
$menuStruct=array(
"Home"=>array("root"=>$siteRoot."home.php")
,"Die Gesellschaft"=>array("root"=>$siteRoot."gesell.php?do=show", "Kooperationen"=>$siteRoot."gesell_koop.php")
,"Das Büro"=>array("root"=>$siteRoot."office.php", "Standort"=>$siteRoot."office_ort.php", "Räumlichkeiten"=>$siteRoot."office_building.php")
,"Leistungen"=>array("root"=>$siteRoot."product.php")
,"Projekte"=>array("root"=>$siteRoot."projekte.php", "Hoch-/Ingenieurbau"=>$siteRoot."projekte_hoch.php", "Straßenbau"=>$siteRoot."projekte_str.php", "Entwässerung"=>$siteRoot."projekte_entw.php", "Umweltschutz"=>$siteRoot."projekte_umwelt.php", "Bauüberwachung"=>$siteRoot."projekte_kontrolle.php")
,"Ausbildung"=>array("root"=>$siteRoot."azubi.php")
,"Kontakte"=>array("root"=>$siteRoot."kontakt.php")
,"Aktuelles"=>array("root"=>$siteRoot."aktuell.php", "Archiv"=>$siteRoot."aktuell_archiv.php")
);
if($_SERVER["PHP_SELF"] == $menuStruct['Home']['root']){
foreach($menuStruct as $key=>$value){
if($_SERVER["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($_SERVER["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($_SERVER["PHP_SELF"],$value)){
if($key2 != "root")
if($_SERVER["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";
}
}
}
}
}
?>
wenn ich (wie zB bei gesell.php) parameter mitsenden will, wird die seite zwar aufgerufen, aber das untermenü (in diesem fall "kooperation") wird nicht dargestellt weil der string ja nicht dem dateinamen entspricht.
nun habe ich mir überlegt den string auf das fragezeichen hin zu untersuchen und an dieser stelle zu teilen, um mit dem linken teil die seite zu definieren (für das menü) und mit dem kompletten teil den link darzustellen.
Code: Alles auswählen
$link = explode('?', $variable);
deshalb baue ich auf euch und hoffe auf eure hilfe.
