Heinz-Jürgen Schymura

Menüsystem 1


Alles begann damit, dass ich irgendwann bei meiner anderen Webseite, die sich mit Wandern beschäftigt und auch Bilder zeigt die ich bei den Wanderungen aufgenommen habe, von der Nutzung der Frames weg kommen wollte, ohne jedoch auf die Vorteile von Frames zu verzichten. Den Vorteil bei der Nutzung von Frames sehe ich eindeutig darin, dass man Menüstruktur und Webseitentext ganz strikt trennen kann. Man braucht also nicht, wenn man irgendwo eine neuen Seite hinzufügt überall den Links zu dieser Seite einfügen, sondern macht das nur an einer Stelle und alles ist in Ordnung.
Des weiteren sollte es, meiner Meinung nach, nicht vom Browser und dessen Einstellungen abhängig sein, was angezeigt wird (Ausnahme Grafiken anzeigen deaktiviert).
So kam ich dann also letztendlich auf PHP (gibt es bei den meisten Webspaceanbietern einfach dazu) in Verbindung mit CSS. PHP läuft auf dem Server und kann dann die Seite(n) so zusammenstellen, dass der Browser eine fertige Seite anzeigen kann, ohne dass dort aktive Elemente wie Java, JavaScript oder AJAX zugelassen sein müssen.
Als weitere Forderung am mich selbst stellte ich auf, dass das PHP-Programm, das ich noch schreiben musste, ohne Änderung am Quelltext, variabel sein sollte und einfach zu steuern. Es sollten sich natürlich einfach neue Seiten (irgendwo) einfügen lassen, oder vorhandene Seiten aus der Menüstruktur entfernen lassen.
Wie Sie sich denken können (sonst würde es diese Seite wohl nicht geben) ist es mir gelungen. CSS wird von mir und dem Programm index.php gebraucht, um Bildschirmbereiche festzulegen. Also das, was Frames auch machen. Man kann mit PHP (auf dem Server) gleichzeitig in mehrere Bildschirmbereiche schreiben beim Zusammenstellen der Seiten. Deshalb habe ich in einer zentralen CSS-Datei die verschiedenen Bereiche festgelegt.
1: Die Kopfzeile mit dem obersten Menü, immer auf jeder Seite sichtbar.
2: Das linke Menü, falls vorhanden, sonst Anzeige eines Textes oder Bilder.
3: Ein weiteres Untermenü rechts davon, falls vorhanden, sonst Anzeige eines Textes oder Bilder.
4: Der Anzeigebereich rechts von den Untermenüs zur Anzeige des Textes oder der Bilder oder beidem.
Alle diese Bereiche sind also namentlich festgelegt. Neben diesen Festlegungen sind dann bei mir auch noch die verschiedenen Schriftarten, Schriftgrößen, die Überschriften, die Hintergrundfarben, die Farben der Menüs und PopUp-Texte bei Vorschaubildern in der zentralen CSS-Datei festgelegt.
Wenn Sie einen anderen Begriff haben möchten (denn diese Namen lassen sich ja im Quelltext der Webseiten anschauen), so tragen Sie halt nur andere Namen an den betreffenden Stellen ein. Genaueres erfahren Sie unter dem Menüpunkt Hilfe Unterauswahl Menüsystem 1.
Ich verwende deshalb eine zentrale CSS-Datei, damit ich eventuelle Änderungen nur an einer Stelle machen muss und sich dadurch das Aussehen aller Seiten, die die betreffenden CSS-Datei benutzen, sofort ändert. Eine komplette Trennung von Formatierungsdaten und Textdaten also. Die zentrale CSS-Datei wird außerdem nur einmal während einer Sitzung vom Browser angefordert, danach braucht sie dann nicht immer wieder übertragen zu werden. Außerdem ist es eine reine Text-Datei, die mit jedem Texteditor einfach bearbeitet werden kann.
So ähnlich verhält es sich auch mit den PHP Quelltextdateien. Auch dies sind einfach Textdateien, die erst zur Ausführungszeit vom entsprechenden PHP-Programm (meist Apache) interpretiert werden. Zudem kann jeder ausführbare PHP-Quellcode weitere PHP-Quellcodes einladen. Dann werden die neuen PHP-Programm(teile) so behandelt, als wären sie schon immer in dem Quellcode vorhanden. Deshalb lässt sich von außen auch ein PHP-Programm wie etwa index.php beliebig steuern und erweitern, ohne dass am Quellcode der Datei index.php etwas geändert werden müsste. Beachten Sie bitte: PHP kann mit doppelten Anführungszeichen und auch mit einfachen Anführungszeichen zur Begrenzung von Zeichenfolgen umgehen. Meine kompilierten Programme, die zum Menüsystem 1 gehören können dies jedoch nicht! Die brauchen immer die doppelten Anführungszeichen zum Begrenzen von Zeichenfolgen.
Nur zur weiteren Information, wenn Sie etwas tiefer in PHP einsteigen wollen.
PHP kennt Konstanten, diese dürfen nur ein einziges mal im gesamten Programm vorkommen, auch in allen hinzu geladenen (include) Dateien dürfen sie nicht wieder verändert werden, sonst werden Fehler erzeugt.
Außerdem kennt PHP auch Arrays. Bei diesen überschreibt jede neue Deklaration eines Arrays mit bereits bekanntem Namen den kompletten Inhalt des bekannten Arrays und ersetzt ihn mit dem neuen Inhalt. Dies geht ohne Speicherplatz (Memory) Verlust vonstatten.
Zum Menüsystem 1 direkt gehören alle PHP-Quelltextdateien, Sie finden sie als Unterpunkte des Menüpunktes Menüsystem 1. Außerdem noch eine Reihe von kompilierten (EXE) Programmen die die Steuerdateien nach Ihren Vorgaben erzeugen. Auch diese finden Sie als Unterpunkte des Menüpunktes Menüsystem 1. Sie haben jedoch keine Dateiextension, also kein .EXE.
Dann gibt es noch eine Reihe von kompilierten Programmen, die zwar eine Schnittstelle zu Teilen des Menüsystems haben, jedoch auch eigenständig gute (andere) Dienste verrichten. Diese haben im Menü hinter ihren Namen noch ein M in Klammern zu stehen.