Alternativen für Frame/IFrame

Sahra

Grünschnabel
Hallo! :)

Ich konnte im Forum kein Thema finden, dass auf meine Frage einging, deshalb entschloss ich mich, einen neuen Thread zu eröffnen.

Mein Problem ist folgendes:

Ich bin zur Zeit dabei, eine Website zu erstellen.
Dabei habe ich bereits alle Unterseiten erstellt, d.h. nur den Inhalt.
Dann habe ich noch eine Seite, wo sich das Menü befindet und wo ich schon weiß, wo der Inhalt hinterher erscheinen soll.
Nun möchte ich aber auf Frames bzw. IFrames verzichten, da ich es als sehr nervig empfinde, wenn man zwei Scrollbalken hat. Um dieses Problem zu beheben möchte ich aber nicht das Layout verkleinern!

Meine eigentlich Frage ist nun, ob ich das Menü in jede dieser Unterseiten, wo sich bisher nur der Inhalt befunden hat, reinkopieren muss.

Das wäre doch später sehr umständlich, wenn ich das Layout und somit auch das Menü ändern möchte, oder?
Ginge es nicht, dass ich es wie bei CSS mache? Da macht man es ja auch so, dass man die Effekte in eine .css Datei abspeichert und diese dann in jede Unterseite als z.B. <link href="style.css" rel="stylesheet" type="text/css"> einfügt, so dass wenn man die .css Datei verändert, diese Änderung sich auf alle anderen Seiten mitüberträgt.

Es ist mir bekannt, dass man das Scrollen "ausschalten" kann, aber das Problem ist, dass manche Seiten bei mir sehr kurz und andere wiederum unglaublich lang sind.
Ich möchte nicht, dass Letzteres dann immer nur zur Hälfte angezeigt wird.
Zwar kann man die Länge auf irgendeinen anderen gigantischen Wert stellen, aber das wäre doch sehr überflüssig, wenn dann Seiten aufgerufen werden, die vielleicht zwei Zeilen beinhalten und man dann noch einen Rest an Seite hat, das leer ist. Also ich persönlich finde sowas nicht schön. Eine Seite sollte immer nur bis zum letzten Wort oder was auch immer gehen, aber nicht leer stehen.

Ich hoffe, ich habe mein Problem einigermaßen verständlich dargelegt.
Ich wäre für jeden Lösungsvorschlag sehr dankbar.

Liebe Grüße

Sahra
 
Hallo Sahra,
ich habe eine Lösung für dich. Es hat zwar nichts mit HTML sondern PHP zutun, aber egal ;)

Es gibt den sogenannten include-Befehl, dieser funktioniert wie Frames/iFrames nur besser.
Mache einfach folgendes, an der Stelle wo du normalerweise ein Frame/iFrame einfügen würdest gibt folgenden Code ein:
PHP:
<? include("inc/navigation.php") ?>
-> Beachte:
Deine index-Datei muss mit .php enden, sprich: index.php
Erstelle nun einen Ordner und nenne diesen z.B.: "inc", dort kannst du jetzt alles neuen .php-Dateien einfügen. In diesem Fall naviagtion.php.
Füge in diese Datei einfach den ganzen Code der normalerweise bei dem Frame/iFrame drinstehen würde.
-> Beachte:
In dieser include-Datei (naviagtion.php) musst du die Befehle <html><head><title><body> </html></head></title></body> weglassen!

mfg,
SilverVegeto
 
Vielen Dank für deine schnelle Antwort, SilverVegeto! :)

Oh je! Ich habe schon befürchtet, dass PHP irgendwas damit zu tun haben könnte. :(
Bin auf diesem Gebiet ein totaler Anfänger.
Ich habe alles so gemacht, wie dus mir gesagt hast, aber dort wo der Inhalt erscheinen soll, erscheint nichts.

Ich habe in meiner index.php Datei
PHP:
<? include("navigation.php") ?>
eingefügt, wobei ich <html><head><title><body> und all das stehen gelassen habe.
Ich habe keinen Ordner mehr erstellt, weil sich eh alles bei mir in einem Ordner befindet.

Der Quellcode meiner navigation.php Datei sieht folgendermaßen aus.
Code:
<link href="style.css" rel="stylesheet" type="text/css">
Welche Faktoren in der index.php Datei könnten der Grund dafür sein, dass nichts angezeigt wird? :confused:
Ich kann mir doch die Datei im Browser angucken, ohne alles auf den Server schmeißen zu müssen, oder zeigt er deshalb nichts an?

Liebe Grüße

Sahra
 
Zurück