php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.06.2004, 12:24  
Gast
 
Beiträge: n/a
Standard [Erledigt] Navigationsleiste mit Datenbank erstellen

Hallo,

ich möchte gerne meine Navigationsleiste dynamisch aus der Datenbank erzeugen, da sich die Website noch in der Anfangsphase befindet und somit ständig Änderungen an dem Navigationsbaum entstehen finde ich es sehr lästig, ständig neue Grafikdateien zu erstellen, diese in alle Navigationsdateien einzufügen etc.

Es muss doch möglich sein dies dynamisch zu generieren. Dabei soll es zwei Ebenen geben. Wenn die oberste Ebene angeklickt wird, öffnet sich die darunterliegende. Wird eine andere Überschrift angeklickt, schließt diese sich wieder und die andere Unterebene öffnet sich...

Außerdem soll irgendwann mal ein Benutzer-Login integriert werden. Benutzer sollen dann verschiedene Menüpunkte in der Navigationsleiste sehen können, je nach Rechten. Dafür wäre es ebenfalls sinnvoll das Ganze von Anfang an aus der Datenbank aufzubauen.

Meine Frage jetzt, wie sollten die Tabellen aussehen

Mein Vorschlag:

Tabelle 1:

Menue_ID, Menuepunkt, Position, URL, Status (0 für passiv, 1 für aktiv),

Tabelle 2:

Untermenue_ID, Menue_ID (zu welchem Obermenue gehoert der Unterpunkt), Position, URL, Status

Hab ich irgendwas vergessen?

Frage 2: Bin ich auf dem "richtigen" Weg? Oder gibt es einfachere Möglichkeiten eine dynamische Navigation zu erstellen?

Vielen Dank!
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 22.06.2004, 12:34  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 642
kid01 befindet sich auf einem aufstrebenden Ast
kid01 eine Nachricht über Skype™ schicken
Standard

gute idee!

hier kannste die Anzeige rausnehmen! Musst dann eben nur an der richtigen stelle die Variablen einfügen!

http://www.dhtmlcentral.com/script/s...?category=menu
kid01 ist offline   Mit Zitat antworten
Alt 22.06.2004, 12:38  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

Prinzipiell habe ich keine Einwände, wenn das Vorhaben dem Design deiner Anwendung zu gute kommt ... aber die Tabellenstruktur ist nicht so prall ...



navNodes (id, Menuepunkt, Position, URL, Status);
navNodeCombine (node, combinesTo);


Macht zwar die Abfrage leicht abstrakt .. ist dafür generisch ...
Ausserdem kannst du so Menüpunkte an beliebige Menüpünkte anpappen .. nicht nur einen ...
Guradia ist offline   Mit Zitat antworten
Alt 22.06.2004, 12:44  
Gast
 
Beiträge: n/a
Standard

Zitat:
navNodes (id, Menuepunkt, Position, URL, Status);
navNodeCombine (node, combinesTo);
Wo bleibt da die Position, die URL und der Status für die Untermenues?
  Mit Zitat antworten
Alt 22.06.2004, 13:00  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

Wo siehst du da Untermenüs, die eine solche Unterscheidung nötig hätten?

Die Menüs sind allesamt gleichberechtigt ... ob sie Unter- oder gar Unter-Unter-Menüs sind, ergibt sich nur aus der Bindung ...

Was wohl aber noch fehlt ist irgendwo ein etwa `bRoot`, was angibt, dass es sich um den ersten Level in der Navigation handelt
Guradia ist offline   Mit Zitat antworten
Alt 22.06.2004, 13:06  
Gast
 
Beiträge: n/a
Standard

Danke, ich versuch´s mal...

...melde mich später sicherlich noch mal hier für weitere Fragen!
  Mit Zitat antworten
Alt 22.06.2004, 16:15  
Gast
 
Beiträge: n/a
Standard

Hab die erste Tabelle nun folgendermaßen erstellt:

navNodes (id, name, position, url, status)

Code:
db_connect () or exit (); 
	
	$result = mysql_query('SELECT * FROM navNodes WHERE status = '1' ORDER BY position ASC');
	
			
  	while($row = mysql_fetch_array($result)) 
		{
		echo ('<tr><td>');
		echo (''.$row['name'].'');
		echo ('</td></tr>');
		
		}
Bis jetzt wird eine Navigationsleiste mit einer Ebene erzeugt, die Formatierung läuft über css.
Wie schaffe ich es jetzt, dass Untermenues sich beim anklicken öffnen?
Steh schon eine ganze Weile an dem Punkt und finde keine Lösung? Muss ich dann jedesmal eine neue Datenbankabfrage starten???
  Mit Zitat antworten
Alt 22.06.2004, 16:27  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MWingenbach
Bis jetzt wird eine Navigationsleiste mit einer Ebene erzeugt, die Formatierung läuft über css.
Gelogen ^^ .. So sieht das für sinniges CSS aus:

Code:
        print '[*]';
        print ''.$row['name'].'';
        print '';

Zitat:
Zitat von MWingenbach
Wie schaffe ich es jetzt, dass Untermenues sich beim anklicken öffnen?
Steh schon eine ganze Weile an dem Punkt und finde keine Lösung? Muss ich dann jedesmal eine neue Datenbankabfrage starten???
Du musst die URL auf der du dich befindest, aus `navNodes` abfragen, dies mit `navNodeCombine` verbinden, dieses wiederum komibiniert mit einer zweiten Instanz von `navNodes` ... (eine einzelne Abfrage versteht sich)
Guradia ist offline   Mit Zitat antworten
Alt 22.06.2004, 16:46  
Gast
 
Beiträge: n/a
Standard

Zitat:
Gelogen ^^ .. So sieht das für sinniges CSS aus:

Code:

print '[*]';
print ''.$row['name'].'';
print '';
Warum? Ist es nicht egal ob ich[*] oder <td> in css formatiere???

Zitat:
Du musst die URL auf der du dich befindest, aus `navNodes` abfragen,
Kann ich stattdessen auch ein verstecktes Formularfeld mit der ID mitführen und die Abfrage sinngemäß so wählen:

Code:
SELECT * FROM navNodes where $_POST['id'] = ...
Müsste doch auch gehen, oder?

Wie frage ich denn aus zwei Tabellen gleichzeitig ab, mit LEFT JOIN?
  Mit Zitat antworten
Alt 22.06.2004, 17:57  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

INNER JOIN in diesem Falle
Guradia ist offline   Mit Zitat antworten
Antwort


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
[Erledigt] MySQL - ERROR 1044 bei erstellen einer Datenbank _youngenterpriser_ Datenbanken 2 05.02.2008 17:56
darf keine Datenbank erstellen in phpMyAdmin Datenbanken 2 20.10.2005 19:32
MySQL Datenbank erstellen, nur wie? Datenbanken 6 10.09.2005 16:59
[Erledigt] problem beim erstellen und auslesen einer datenbank PHP Tipps 2005-2 6 04.09.2005 16:55
datenbanken in mysql erstellen??? PHP Tipps 2005-2 0 05.08.2005 19:41
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:33
[Erledigt] mysql datenbank anlegen...aber WIE??? PHP Tipps 2005-2 0 05.08.2005 19:33
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
Datenbank erstellen PHP Tipps 2005-2 6 31.07.2005 21:51
[Erledigt] Eintrag in Datenbank erstellen Datenbanken 5 28.12.2004 12:53
mit mysql und php eine datenbank erstellen? Großes Problem PHP Tipps 2004-2 1 16.12.2004 14:53
Wer kann mir in PHP MYSQL eine Datenbank erstellen? Beitragsarchiv 5 29.10.2004 12:05
Datenbank erstellen ohne PHPmyAdmin PHP Tipps 2004 20 26.07.2004 17:31

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
navigationsleiste erstellen, php navigationsleiste, navigationsleiste datenbank, http://www.php.de/datenbanken/3458-navigationsleiste-mit-datenbank-erstellen.html, navigationsbaum, navigationsleiste php, navigationsbaum erstellen, php navigationsbaum, navigation datenbank, php navigation erstellen, dynamische navigation php mysql, php menü nach rechten erstellen, navigationsmenü sql, mysql tabelle mit überschriften anderer tabellen erstellen, html datenbank erstellen, mysql php navileiste, php tabellen navigation, navigationsleiste php erstellen, navigation aus datenbank, navigationsleiste wo sich unterebene öffnet

Alle Zeitangaben in WEZ +1. Es ist jetzt 21:12 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.