php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.10.2004, 12:39  
Gast
 
Beiträge: n/a
Standard [Erledigt] PHP Navigation => Function aufrufen und Navigation ausgeb

hi!

folgendes, ich habe ein array, welches ein navigationsmenü darstellt,
es enthält main- und submenüeinträge, und das main bzw submenü soll
an verschiedenen positionen auf der seite ausgegeben werden.

nur weiß ich nicht genau wie ich das anstellen soll, es gibt da
nämlich ein porblem. und zwar scheint in meiner funktion der wert von
basename($REQUEST_URI) nicht bekannt zu sein.

das script rufe ich ganz normal auf, erstmal das require der navigation.php
<?php require("navigation.php"); ?>

und dann den funktionsaufruf für das jeweilige navigationsmenü (zB "main", "sub1")
<?php get_navigation("main"); ?>
<?php get_navigation("sub1"); ?>


Das main menü erscheint zwar, jedoch ist der gewählte menüpunkt nicht markiert und
das sub menü erscheint auch nicht.

schauts euch am besten mal an...
hier ist die navigation.php

Code:
<?php
function get_navigation($nav) {

////////////////////////////// Beginn der Einstellungen ////////////////////////////////

		// Image
		$img = "<img src=\"../images/icon_arrow.gif\" width=\"7\" height=\"7\">";
		$break = "break";
	
		// Nachfolgende Struktur duerfte sich nun von selbst erklaeren ;-)

		   $menu = array (
		   
			// Leerzeile //
			"break1" => array ($break),	
			// Leerzeile //
			"break2" => array ($break),	
			// Leerzeile //
			"break3" => array ($break),	
		   
			// Menue mit Submenue //
			"VEREIN" => array ("index.php",
			"VORSTAND" => "index1.php",
			"VEREINSHEIM" => "index2.php",
			"ANFAHRT" => "index.php"
			),
			
			// Leerzeile //
			"break4" => array ($break),	
			
			// Menue mit 3 Submenues //
			"BASKETBALL" => array ("index.php?m=200409"),
			
			// Menue mit 1 Submenue //
			"FUSSBALL" => array ("index.php?cat=1",
			"1 man" => "index1.php",
			"2 man" => "index2.php",
			),
			
			// Menue ohne Submenue //
			"GYMNASTIK" => array ("gym.php"),
			
			// Menue mit 3 Submenues //
			"TENNIS" => array ("tenn.php"),
			
			// Klammer zu *gg* //
			);

////////////////////////////// Ende der Einstellungen ////////////////////////////////		
		
		switch($nav)
		{
			case "main" :
						echo basename($REQUEST_URI);
						echo "<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";  
						
						foreach($menu as $main => $mainlink){
						$x = count ($mainlink);
						
						if($mainlink[0] == basename($REQUEST_URI) && $mainlink[0] !== $break) {
						echo "<tr><td><div class='title'>$img$main</div></td></tr>";
						}
						
						if($mainlink[0] !== basename($REQUEST_URI) && $mainlink[0] !== $break) {
						echo "<tr><td>$img<a title=\"$main\" href=\"$mainlink[0]\">$main</a></td></tr>";  
						}
						
						// LEERZEILE
						else
						if($mainlink[0] == $break) {
						echo "<tr><td></td></tr>";
						}
						
						}
						echo "</table>";
						break;	

						
			case "sub1" :
						echo "<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";  
						
						foreach($menu as $main => $mainlink){
						foreach($mainlink as $sub =>$sublink){
						$x = count ($mainlink);
						
						if($mainlink[0] == basename($REQUEST_URI)) {
						echo "<tr><td>$img<a title=\"$sub\" href=\"$sublink\">$sub</a></td></tr>";
						}
						
						if(array_search(basename($REQUEST_URI),$mainlink) && $sub[0] != ""){
						if(basename($REQUEST_URI) == $sublink){
						echo "<tr><td><div class='title'>$img$sub</div></td></tr>";
						}
						else{
						echo "<tr><td>$img<a title=\"$sub\" href=\"$sublink\">$sub</a></td></tr>";
						}
						}
						}
						}
						echo "</table>";
						break;	
						
			case "sub2" :
						echo "Navigation 2";
						break;
						
			default :  
						echo basename($REQUEST_URI);
						echo "default";
						break;			
							
		}
	}
?>
danke!
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.10.2004, 13:30  
Gast
 
Beiträge: n/a
Standard

stichwort register_globals .. gib halt einfach mal per echo aus, ob $REQUEST_...
überhaupt definiert ist. und wenn nicht, würde ich mal auf die $_SERVER -Variable
umstellen.
 
Alt 14.10.2004, 14:04  
Gast
 
Beiträge: n/a
Standard

ok, hat geklappt!

danke!

nur jetzt noch ne frage, weiß jemand wie ich das ganze in 3ebenen strukturieren kann, weiß nämlich nicht, wie ich das array jetzt auf 3 ebenen durchlaufen soll...???
 
Alt 14.10.2004, 14:14  
Gast
 
Beiträge: n/a
Standard

wahrscheinlicherweise halt so oder?

// Menue mit 1 Submenue //
"FUSSBALL" => array ("index.php?cat=1",
"1 man" => "index1.php",
"2 man" => "index2.php",
),
 
Alt 14.10.2004, 14:33  
Gast
 
Beiträge: n/a
Standard

das sind 2 ebenen

main und sub

ich brauch aber

main, sub1 und sub2
 
Alt 14.10.2004, 14:41  
Gast
 
Beiträge: n/a
Standard

ah ja .. einleuchtend ..

dann würd ich mal im orginal script den unterschied zwischen

// Menue mit 3 Submenues //
"BASKETBALL" => array ("index.php?m=200409"),

und

// Menue mit 1 Submenue //
"FUSSBALL" => array ("index.php?cat=1",
"1 man" => "index1.php",
"2 man" => "index2.php",
),

untersuchen.
 
Alt 14.10.2004, 16:46  
Gast
 
Beiträge: n/a
Standard

sorry, aber anhand den überschriften kann man sich leider nicht orientieren, ich meine:
// Menue mit 1 Submenue //

die hab ich nur nicht geändert...

ich möchte jetzt eigentlich nur noch eine dritte ebene haben, nur weiß ich nicht wie ich das anstellen soll...

also:

1. MAIN
1.1 SUB
1.1.1 TEST1
1.1.2 TEST2

ich kann zwar noch ein array in das bestehende array mit einfügen, nur verstehe ich das auslesen dann nicht so recht...
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
GD-Spezialisten gesucht....wer kann helfen? rezix PHP Tipps 2008 12 26.02.2008 17:55
JavaScript - Function aus Variabel aufrufen stefanjann HTML, Usability und Barrierefreiheit 6 04.09.2006 08:55
eval : Kann function mit array nicht aufrufen!? PHP Tipps 2006 10 02.06.2006 00:40
Skript zur Dateisuch => function??? PHP Tipps 2005 2 16.02.2005 18:03
function innerhalb einer function aufrufen. PHP Tipps 2005 18 21.01.2005 20:36
Function mit <form ..action=??> aufrufen PHP Tipps 2004 8 06.08.2004 20:56

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php navigation, php navigation function, php funktion navigation, php navigation ebenen, <function>&gt;=</function>, navigation php mehrere ebenen, php funktion mit array aufrufen php, php navigation script, php navigationsebenen, php mehrere navigationsebenen, navigation php, php navigation mit function, php menü mit submenü mit array, php link aufruf einer sub, php arry menü, html aus navigationsleiste funktion aufrufen, php function break, php $break, menu 3 ebenen php, php array leerzeile statt navigationspunkt

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.