• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Link soll Seite1.html mit Seite2.html in einem Inlineframe öffnen

Status
Für weitere Antworten geschlossen.

Black_Planet

Neues Mitglied
Hallo Forum.
Ich bastele gerade an meiner ersten Homepage und habe folgendes Problem: Die Startseite index.html enthält einige Gifs, Laufbänder, etc., sowie eine Reihe von Buttons zur Navigation. Diese Buttons öffnen in einem Inlineframe auf dieser Index.html entsprechende unterschiedliche Inhaltsseiten (Wir_über_uns.html, Links.html, Kontakt.html, etc..).
Nun ist es so, dass eine dieser Inhaltsseiten (Es handelt sich hier um die Galerie mit Fotoalben) mehr Breite benötigt als dieser "Standard-Inlineframe" bietet. Da für alle anderen Inhalte die Breite des Standard-Inlineframe ausreicht und ich den Platz rechts neben dem Inlineframe der Index.html auch nutzen möchte, möchte ich den Inlineframe nicht per se breiter machen.
Meine Idee war nun diese Galerie.html komplett neu zu gestalten und beim Klick auf den Button ganz neu zu öffnen (Anstelle im Inlineframe der Index.html wie die anderen.) und bei dieser Galerie.html auf die Anzeigen zu verzichten, die normalerweise rechts neben dem Inlineframe der Index.html positioniert sind. Die Navigationsbuttons sollen aber genau wie auf der Index.html angeordnet sein und bei einem Klick darauf wieder die Index.html mit dem entsprechenden Inhalt (Wir über uns, Links, Kontakt, etc..) im Inlineframe der Index.html öffnen.
Ich möchte also Links auf eine Seite (Index.html) mit unterschiedlichem Inhalt eines Inlineframes dieser Index.html haben.
Ist sowas möglich und wenn ja wie? Für eure Hilfe bedanke ich mich im Voraus.
m.f.G. Black_Planet
 
Öffne halt einfach eine neue Seite, wo der iFrame entsprechend größer ist und die störenden Inhalte nicht drin sind.

Und wenn Du dann fragst, was Du dagegen tun kannst, dass Du das Menü und alles andere in zwei Dateien halten musst, dann sind wir an dem Punkt, wo Du ganz auf Frames und deren Nachteile verzichten kannst und gleich alles per include() lösen kannst.

Gruß,
-Efchen
 
Hallo Efchen.
Ja - Das funktioniert auf dem Hinweg.Der Link "Galerie" auf der Index.html kann eine neue Seite mit einem entsprechend größeren Inlineframe öffnen. So weit so gut. Aber der Rückweg... Diese neue Seite mit dem größeren Inlineframe soll aber als Navigations die gleichen Buttons (Wir über uns, Links, etc.) bekommen wie die Index.html. D.h. von dieser neuen Seite, nennen wir Sie Galerie.html, müssten Linkbuttons zurück auf die Index.html verweisen. Das klappt ja noch, aber der Inhalt des Inlineframes auf dieser Index.html soll sich eben entsprechend dem auf der Galerie.html geklickten Button (Wir über uns, Links, etc.) aufbauen. Ich muss diesen Linkbuttons der Galerie.html halt sagen können "Öffne die Index.html und im Inlineframe dieser Index.html öffne den Inhalt 'Wir über uns', 'Links' oder 'Geschichte'" Und DAS weiß ich nicht wie ich diese Links der Buttons schreiben muss.
m.f.G. Black_Planet

Include()? Und da sind wir an der Stelle wo ich natürlich zugebe, dass ich da noch nicht allzu viel Ahnung von habe (Meine erste Homepage... :-| ): Was ist Include() und wie funktioniert das?
 
Zuletzt bearbeitet von einem Moderator:
Wenn es Deine erste Website ist, dann war der Einstieg mit Frames ganz schlecht. Diese Technik ist schon seit Jahren nicht mehr Bestandteil der aktuellen XHTML-Version ab 1.0 Strict. Frames haben entscheidende Nachteile für Benutzer und Frames funktionieren einfach anders, als das WWW es eigentlich vorsieht. Ich würde neu anfangen.

include() ist eine serverseitige Lösung, das geht mit SSI oder mit PHP (und allem anderen wahrscheinlich auch), Du kannst include z.B. als PHP-Befehl einbinden:
Code:
<?php include("dateiname"); ?>
Dann wird der Inhalt von "dateiname" an die Stelle Deiner Datei gepackt, wo das Kommando steht, also der oben stehende Code wird durch den Inhalt der Datei "dateiname" ersetzt.
So kann man wunderbar sein Menü in eine eigene Datei schreiben und diese Datei von allen Seiten aus includen.
Oder man geht den umgekehrten Weg und schreibt eine "Layout-Datei", in der die Basis-Seite ohne den eigentlichen Content steht, also eine Seite, wo Dein Header ist, Dein Menü, Footer, was Du sonst noch so alles auf allen Seiten hast, und an der Stelle, wo der Content hin soll, steht ein include, das die gewünschte Seite einbindet.

Gruß,
-Efchen
 
Hallo Efchen.
Zunächst mal Danke für deine Hilfe. Ich bin ein Freund klarer Worte "...(Schlechter Einstieg..."!
Tja, das hat sich so ergeben, weil ich eben ohne großartige Kenntnisse in HTML eine Website gestalten wollte und was nimmt man da halt - Richtig, das was man hat und das war halt Frontpage. Und so bin ich über "Ich probier mal tolle Sachen aus" bei den Inlineframes gelandet. Sah am Anfang auch ganz praktisch aus. Isses nicht, seh ich ein, und hab ich auch an verschiedensten Stellen bereits gelesen (Stichwort Suchmaschinen).
Das was du am Schluss beschrieben hast (Der umgekehrte Weg) hört sich ähnlich an wie die Inlineframes. Mal für Doofe: Dann muss meine Startseite also eine index.php sein und muss in php geschrieben werden? Gibt es da ähnliche Tools wie Frontpage? Mag sich jetzt blöd anhören, aber ich brauch irgendeinen Einstieg. Bin durchaus lernwillig und probierfreudig, aber der Einstieg muss her. Wo könnte ich denn eine Demo-Index.php herbekommen?
m.f.G. Black_Planet
 
Das was du am Schluss beschrieben hast (Der umgekehrte Weg) hört sich ähnlich an wie die Inlineframes.
Überhaupt nicht. Ein entscheidendes Merkmal von Frames ist, dass nur der Inhalt eines Frames ausgetauscht wird. Ohne Frames wird immer die ganze Seite ausgetauscht. Es ist also nicht möglich, wonach Umsteiger gerne fragen, eine Seite in ein bestimmtes Tag zu laden. Bei include() übernimmt PHP die Arbeit serverseitig, Deine angeforderte Seite aus mehreren Dateien zusammen zu bauen. Das Ergebnis ist, wie bei serverseitigen Techniken üblich, eine eigenständige HTML-Seite, wo von PHP nichts mehr übrig ist.

Mal für Doofe: Dann muss meine Startseite also eine index.php sein und muss in php geschrieben werden?
Jede Seite, die PHP-Befehle enthält, muss vom Server auch durch den PHP-Interpreter geschickt werden. Wie die heißt, ist Sache der Serverkonfiguration, aber idR ist es so, dass die Dateiendung .php ist, und auch eine Startseite mit index.php wird für gewöhnlich als Index gefunden, wenn kein Dateiname in der URL angegeben ist.
Natürlich kann man dem Server auch sagen, er soll .html- oder .xyz-Dateien durch den PHP-Interpreter schicken, oder man kann per mod_rewrite erreichen, dass man bei Aufruf einer abc.html in der Adresszeile die Datei abc.php ausliefert, aber das geht jetzt wahrscheinlich weiter, als Du das wissen willst :-)

Gibt es da ähnliche Tools wie Frontpage?
Keine Ahnung. Der Unterschied zu HTML, was lediglich eine Seitenbeschreibungssprache ist, wo man mit wenigen Tags eine Struktur festlegt, ist dass PHP eine Script-Sprache (eine Programmiersprache, die von einem Interpreter verarbeitet wird) ist, also eine gewisse Ablauflogik da rein kommt und man das nicht mehr mit einem WYSIWYG-Editor machen kann.

Mag sich jetzt blöd anhören, aber ich brauch irgendeinen Einstieg.
Das hört sich gar nicht blöd an, aber ich kenne leider nur php.net und benutze das als Referenz, weil ich selbst Programmierer bin und PHP nicht viel anders aussieht, als andere Script- oder Programmiersprachen. Es gibt aber sicher auch PHP-Tutorials im Netz.

Bin durchaus lernwillig und probierfreudig, aber der Einstieg muss her. Wo könnte ich denn eine Demo-Index.php herbekommen?
Nirgends. Denn es kommt ja darauf an, was Du mit PHP machen willst.
Wenn Du es nur für include() brauchst, dann habe ich oben allen Code geschrieben, den Du brauchst. Wenn Du mit PHP Datenbank-Abfragen machen willst, Dateien lesen oder schreiben oder sonstige Dinge, dann brauchts viel mehr und vor allem ein Grundverständnis in Programmierung.

Gruß,
-Efchen
 
Hallo Efchen,
erstmal vielen Dank für deine Hilfe. Ich habe jetzt, damit die Website ans Leben kommt, erstmal vür die Main-Themes eigene Webseiten eingerichtet, damit kann ich für die Galerie eben eine Seite mit größerem Platz für das Fotoalbum generieren.
Muß ich mich dann für die weitere Gestaltung mal näher mit PHP befassen. Bin programmiertechnisch nicht ganz unbeschrieben, habe ein paar Sachen in VB programmiert und muss beruflich relativ regelmäßig VBScript programmieren. Dennoch fehlt mir da immer noch der Einstieg. Gibt es empfehlenswerte PHP-Anfängerliteratur oder Sites? So nach dem Motto "My first PHP-page"...
Frage 2 die sich nun stellt ist: Wenn Suchmaschinen eben die Inhalte der Inlineframes durchsuchen und diese verlinken, kommt der Besucher, wenn er über eine Suchmaschine kommt ja nur auf die Contentseite (Die im Original in einem Inlineframe positioniert ist.), die ja leider keinerlei Navigation besitzt. Es soll da per Java die Möglichkeit geben diese übergeordnete Seite nachzuladen. Stimmt das? Wenn ja, wie geht das?
m.f.G. Black_Planet
 
Dennoch fehlt mir da immer noch der Einstieg. Gibt es empfehlenswerte PHP-Anfängerliteratur oder Sites? So nach dem Motto "My first PHP-page".
Gibts bestimmt, aber ich kann Dir keine empfehlen. Ich als Programmierer habe mich mit Hilfe von php.net, das ich eigentlich nur als Referenz benutze, ganz gut eingefunden, da PHP funktioniert wie etliche andere Scriptsprachen auch.
Wichtig ist nur, und das füge ich hier jetzt noch ein, weil ich Dich "PHP-page" schreiben lese, dass klar ist, dass PHP keine Sprache ist, um Webseiten darzustellen. PHP erzeugt lediglich eine HTML-Seite.

Es soll da per Java die Möglichkeit geben diese übergeordnete Seite nachzuladen. Stimmt das? Wenn ja, wie geht das?
Nein. Java bleibt immer in seinem Applet, auf irgendwelche HTML-Elemente kann das nicht zugreifen. Du meinst sicher JavaScript. Ja, damit geht das. Wenn der Besucher das aber abgeschaltet hat, kannst Du auch nichts nachladen. Genauso kann der Nutzer ja kein Bookmark auf Deine Seite im iFrame setzen. Das sind halt die üblichen Nachteile von Frames, weswegen man sie in der Regel vermeidet.

Ich muss gestehen, dass ich das schon gar nicht mehr genau weiß, wie das geht, das habe ich das letzte Mal vor ca. 8 Jahren verwendet, im Zweifelsfall musst Du "href" des Objekts "parent" prüfen, ob das richtig ist, bzw. ob überhaupt ein parent existiert. Aber da würd ich einfach im JavaScript-Forum nochmal fragen oder danach googlen, da wirst Du sicher fündig.
Aber in der Zeit, in der Du rausgefunden hast, wie das geht, und das angewendet hast, hast Du auch include() in PHP gelernt, verstanden und kannst es in Zukunft auf alle Deine Sites anwenden.

Gruß,
-Efchen
 
Hallo Efchen,
klar, war blöde ausgedrückt: php ist eine Scriptsprache.
Wär ja auch zu einfach gewesen, wenn man alles so mit einem Editor (a la Frontpage) machen könnte. Werde da jetzt dann mal tiefer einsteigen. Hab meine Seite mal durch The W3C Markup Validation Service laufen lassen - Erschreckendes Ergebnis. MS macht wohl was es will, wie? Naja, egal. Die Seite, so wie man sie jetzt sieht, stand im Gerüst nach einem Tag, aber die Feinheiten halten jetzt schon Wochen auf. Und bis ich da alle Fehler raus hab, wird auch noch was dauern.
Ich danke dir jedenfalls für deinen Support, werde mich bei php.net mal umsehen.
Bis zur nächsten Frage... :lol:
m.f.G. Black_Planet
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben