herunder kommer en masse kode, hvor jeg har forsøgt at kommentere hele vejen, og et levende eksempel kan ses på
www.vindehelsinge.dkkoden indeholder et array der indeholder nogle arrays, så bare hold tungen lige i munden, så håber jeg du kan se systemet.
----- kode -----
<?php
$urlfil = $HTTP_SERVER_VARS[PHP_SELF];
$splitsti = split('/', $urlfil); // splitter url-linien op
$urlfil = $splitsti[count($splitsti)-1]; // tager det bageste af url-linien (filnavnet)
if (!isset($mappe)) { // hvis $mappe ikke er sat manuelt med en variabel så tager den det fra url'en - på min side sætter jeg dem manuelt med en variabel
$mappe = $splitsti[count($splitsti)-2]; // tager det næst-bageste af url-linien (mappenavnet)
}
function menu($mappe, $punkt) { // function starter
$mappearray = array(
'www',
'opslagstavle',
'gymnastik',
'friluftsliv',
'dilettant',
'bestyrelse'
); // her en liste over de mapper der kan forekomme
$hovedmenuarray = array(
'hovedmenu.gif',
'opslagshovedmenu.gif',
'gymnastikhovedmenu.gif',
'friluftslivhovedmenu.gif',
'dilettanthovedmenu.gif',
'bestyrelsehovedmenu.gif'
); // her fik den en liste over hovedmenubillederne
$menufil[gymnastik] = array(
'gymnastik.php',
'gymhold.php',
'gyminstr.php',
'gymnastikfoto.php'
); // her fik den en liste over filnavne under gymnastikafdelingen
$menutekst[gymnastik] = array(
'Gymnastik-forside',
'Gymnastikprogram',
'Gymnastik-instruktører',
'Billedgalleri'
); // her fik den en liste over link-tekster under gymnastikafdelingen
$menufil[friluftsliv] = array(
'friluftsliv.php',
'hvaderfriluftslaug.php',
'turprogramdb.php',
'ture03.php',
'ture02.php',
'ture01.php',
'ture00.php',
'ture99.php',
'friluftsfoto.php'
); // her fik den en liste over filnavne under friluftsliv
$menutekst[friluftsliv] = array(
'Friluftsliv-forside',
'Hvad er friluftslauget',
'Turprogram',
'Turfortællinger 2003',
'Turfortællinger 2002',
'Turfortællinger 2001',
'Turfortællinger 2000',
'Turfortællinger 1999',
'Billedgalleri'
); // her fik den en liste over link-tekster under friluftsliv
$menufil[dilettant] = array(
'dilettant.php',
'dilettantfoto.php'
);
$menutekst[dilettant] = array(
'Dilettant-forside',
'Billedgalleri'
);
$menufil[bestyrelse] = array(
'bestyrelse.php',
'generalforsamling2002.php',
'bestyrelsesliste.php',
'prisliste.php',
'bestyrelsefoto.php',
);
$menutekst[bestyrelse] = array(
'Bestyrelses-forside',
'Generalforsamling 2002',
'Hvem er bestyrelsen',
'Priser og kontingenter',
'Billedgalleri'
);
// vi skal sætte en pil eller ikke et klart billede
$clear = "<IMG SRC=\"clear.gif\" BORDER=\"0\" WIDTH=\"10\" HEIGHT=\"1\" ALT=\"\">";
$pil = "<IMG SRC=\"pil.gif\" BORDER=\"0\" WIDTH=\"10\" HEIGHT=\"10\" ALT=\"\">";
// sørger for at de to outputs sættes globalt
global $menu;
global $menuimage;
for($i=0;$i<count($mappearray);$i++) { // tæller igennem mappearray og sætter det rigtige hovedmenu-billede
if ($mappearray[$i] == $mappe) {
$menuimage = "$hovedmenuarray[$i]";
}
}
$menu .= "<FONT>";
for($i=0;$i<count($menufil[$mappe]);$i++) { // tæller igennem filerne og produserer links af filænavne og link-tekster
if ($menufil[$mappe][$i]==$punkt) {
$menu .= "$pil"; }
else {
$menu .= "$clear";
}
$menu .= "[ <A HREF=\"". $menufil[$mappe][$i] ."\">". $menutekst[$mappe][$i] ."</A> ]<BR>";
}
$menu .= "</FONT>";
} // function slutter
menu($mappe,$urlfil); // vi kalder funktionen med de to inputs: mappenavn og filnavn
echo $menuimage; // skriver filnavnet 'friluftslivhovedmenu.gif', hvis brugeren er i mappen 'friluftsliv'
echo $menu; // skriver hele friluftslivmenuen, hvis brugeren er i mappen 'friluftsliv'
?>
----- /kode -----
mvh Folmer