Scripts
Menu2 dynamisch
Een menu die je uit de database haalt. Uiteraard was dit niet gerealiseerd wanneer jullie mij hier van PHPhulp niet hadden geholpen en jullie inmense geduld :-) @ All ===> BEDANKT!! Hier de tabellen: CREATE TABLE `Menu` ( `ID` bigint(3) NOT NULL auto_increment, `MenuNaam` varchar(150) NOT NULL default '', PRIMARY KEY (`ID`) ) TYPE=MyISAM AUTO_INCREMENT=4 ; CREATE TABLE `MenuLinks` ( `ID` bigint(3) NOT NULL auto_increment, `Menu` varchar(150) NOT NULL default '', `LinkNaam` varchar(150) NOT NULL default '', `Url` varchar(150) NOT NULL default '', `Target` varchar(50) NOT NULL default 'main', PRIMARY KEY (`ID`) ) TYPE=MyISAM AUTO_INCREMENT=19 ;
menu2-dynamisch
<?php
error_reporting(E_ALL);
//hier worden de menu's gemaakt
//eerst voor de menucode: (of ID)
$query="SELECT ID, MenuNaam FROM Menu";
$sql=mysql_query($query) or trigger_error(mysql_error());
$total_menu=0;
while($data=mysql_fetch_array($sql))
{
// voor later gebruik :)
$menunaam[]=$data['MenuNaam'];
$total_menu++;
}
//de plaatjes 10*10 pixels
$img_min = '<img src="../images/min.gif" border="0" alt="">';
$img_plus = '<img src="../images/plus.gif" border="0" alt="">';
$img_blank = '<img src="../images/blank.gif" width="16" height="15" border="0" alt="">';
// hier maken we een loop voor de menu's
for($i = 0; $i < $total_menu; $i++)
{
$num = $i + 1;
//is er een menu opengeklapt zoja welken en zet het in een array
if(!empty($_GET['Menu']))
{
$open = explode(',', $_GET['Menu']);
$total_open = count($open);
}
else
{
$open = array();
}
//kijkt of de menu open geklapt moet worden ja of nee
if(in_array($num, $open))
{
$remove_menu = str_replace($num.',', '', $_GET['Menu']);
echo '<a href="?Menu='.$remove_menu.'">'.$img_min.'</a>'.$menunaam[$i]."\n";
//deze stond er:
//$query2="SELECT LinkNaam, Url FROM MenuLinks WHERE Menu=$num";
//is deze geworden met Target erin
$query2="SELECT LinkNaam, Url, Target FROM MenuLinks WHERE Menu=$num";
$sql2=mysql_query($query2) ;
// de items voor de links uitlezen
// en de menu uitgeklapt weergeven
while($data2=mysql_fetch_array($sql2))
{
$linknaam=$data2['LinkNaam'];
$Url=$data2['Url'];
//deze is zonder target
//echo '<br>'.$img_blank.'<a href="'.$Url.'">'.$linknaam.'</a>'."\n";
//dit is nieuw
$Target=$data2['Target'];
echo '<br>'.$img_blank.'<a href="'.$Url.'" target="'.$Target.'">'.$linknaam.'</a>'."\n";
}
echo '<br><br>'."\n";
}
else
{
// de url maken
if(empty($_GET['Menu']))
{
$Url = '?Menu='.$num.',';
}
else
{
$Url = '?'.$_SERVER['QUERY_STRING'].$num.',';
}
echo '<a href="'.$Url.'">'.$img_plus.'</a>'.$menunaam[$i].'<br>'."\n";
}
}
?>
Reacties
0