Submenu ergens anders

Status
Niet open voor verdere reacties.

jtheiner

Gebruiker
Lid geworden
4 mrt 2010
Berichten
104
Hallo,

Ik heb CMS systeem een menu, met daaronder een submenu.
Nu wil ik de submenu op een andere plek dan in me menu zelf.
Ik wil mijn 1e level menu namelijk horizontaal en mijn 2e level menu verticaal op mijn content pagina zelf.

Nu is de link voor alles in 1 menu:
PHP:
<?php  
include 'db_connect.php';
$tbl_name="mod_menu"; 

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");


$query = "SELECT * FROM $tbl_name ORDER BY arrange"; 
$result = mysql_query($query) or die(mysql_error());
$files = mysql_fetch_assoc($result);

?>

<div class="blue">
<ul class="accordion" id="accordion">

<?php do {
?>			
			
      
			
			<?php 
			
				if ($files['mName']==NULL){

			}else {
			if ($files['mName']=='home'){}
			else{
			?>
			<li class="first"><a href="<? echo $files['pageid']; ?>">> 
			
			<?php 
				$space = array("_");
				$files['mName'] = str_replace($space, " ", $files['mName']);
			echo $files['mName']; ?></a>
			<?php
				if ($files['d1']!=NULL ){
					$query1 = "SELECT * FROM $tbl_name WHERE d1='".$files['mID']."' ORDER BY arrange"; 
					$result1 = mysql_query($query1) or die(mysql_error());
					$d1 = mysql_fetch_assoc($result1);
					$count = mysql_num_rows($result1);
					
					
					do {$d1c++;
					?>
					<ul class="sub_menu" style="display:none;">
        			<li class="second"><a href="<? echo $d1['pageid']; ?>">> 
					
					<?php 
					$spaced11 = array("_");
					$d1['d1id'] = str_replace($spaced11, " ", $d1['d1id']);
					
					echo $d1['d1id']; ?></a>
					<ul>
					<?php
	
					if ($d1['d2']!=NULL){
					$query2 = "SELECT * FROM $tbl_name WHERE d2='".$d1['mID']."' ORDER BY arrange"; 
					$result2 = mysql_query($query2) or die(mysql_error());
					$d2 = mysql_fetch_assoc($result2);
					?>
					
					<?
					do {
					?>
						<li class="third"><a href="<? echo $d2['pageid']; ?>">> <?php 
					$spaced2 = array("_");
					$d2['d2id'] = str_replace($spaced2, " ", $d2['d2id']);
						
						echo $d2['d2id']; ?></a></li>

					<?
					}while ($d2 = mysql_fetch_assoc($result2));
					}
					?>
					</ul>
					
					</li>
					</ul>
					
					<?php
					}while ($d1 = mysql_fetch_assoc($result1));
					}

					}
}
			}While ($files = mysql_fetch_assoc($result));
?>

</li><?php

 if ($_SESSION["myusername"]==true){
echo '<li class="first"><a href="?id=menu/logout.php">> Afmelden</a></li>';
echo '<li class="first"><a href="?id=menu/login_success.php">> Admin</a></li>';
	}
	else{
echo '<li class="first"><a href="?id=menu/form.php">> Inloggen</a></li>';
	}
?>

</ul>
</div>
	<script type="text/javascript" src="js/menu/jquery.cookie.js"></script>
	<script type="text/javascript" src="js/menu/jquery.dcjqaccordion.2.6.min.js"></script>
	<script type="text/javascript" src="js/menu/jquery.hoverIntent.minified.js"></script>



Nu gaat het eigenlijk om dit stukje voor de 2e level:
PHP:
                    <ul class="sub_menu" style="display:none;">
        			<li class="second"><a href="<? echo $d1['pageid']; ?>">> 
					
					<?php 
					$spaced11 = array("_");
					$d1['d1id'] = str_replace($spaced11, " ", $d1['d1id']);
					
					echo $d1['d1id']; ?></a>
					
					</li>
					</ul>


Hoe kan ik dit het beste dan ergens anders naartoe sturen?
Ik heb al zitten denken aan een "string"? of hoet heet zo'n verwijzing:
PHP:
                    <?php
                    $menu2 = '
                    <ul class="sub_menu" style="display:none;">
        			<li class="second"><a href="<? echo $d1['pageid']; ?>">> 
					
					<?php 
					$spaced11 = array("_");
					$d1['d1id'] = str_replace($spaced11, " ", $d1['d1id']);
					
					echo $d1['d1id']; ?></a>
					
					</li>
					</ul>
					'
					?>

en dan op de plek waar de sublevel moet komen:
PHP:
<?php
echo $menu2;
?>

Maar dat gaat hem niet worden want dat werkt niet omdat er in de string quote's ofzo zitten ('). toch?

Maaar, hoe moet het dan wel?

Bedankt!
 
Ik begrijp wat je bedoelt
maar of dat technisch uit te voeren is in php weet ik niet.

Overigens is het niet logisch om het te willen op de manier waarop jij het voorstelt.

Een submenu heet niet voor niets een submenu: het is een onderdeel van het primaire menu.

In jouw geval zou ik adviseren om een één-niveau-menu te hanteren voor het horizontale gedeelte
en daarnaast aparte menu's voor de zijbalk, afgestemd op het onderdeel van de website waar ze in staan.

In de meestgebruikte CMS-en is dat volgens mij ook redelijk goed te realiseren.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan