Forum in iframe + adresszeile

27.12.2007 19:24
#1 Forum in iframe + adresszeile
An
Mitglied

Hallo ich habe mein Forum als iframe in eine homepage eingebunden.

Ich möchte das in der adresszeile des Browsers immer ein link in den frame in das gerade geöffnete posting oder die subkategorie angezeigt wird (damit man in die subkategorien des forums einfsch verlinken kann)


 Antworten

 Beitrag melden
27.12.2007 20:44
avatar  Vitalis
#2 RE: Forum in iframe + adresszeile
avatar
Profi

Das ist Technisch nicht möglich...

;-)





 Antworten

 Beitrag melden
28.12.2007 00:10
#3 RE: Forum in iframe + adresszeile
An
Mitglied

auch net mit javaskript oder auf umwegen?

Wie setz ich denn einen link in einen frame wenn ich die adresse auf die ich zeigen will kenne?


 Antworten

 Beitrag melden
28.12.2007 00:55 (zuletzt bearbeitet: 28.12.2007 00:59)
avatar  Vitalis
#4 RE: Forum in iframe + adresszeile
avatar
Profi
Verzeihung, ist doch möglich, hab Sie nur verkehr verstanden... *g*
Ich habe mich nämlich auf folgendes gestützt: http://forum.jswelt.de/javascript/34003-...e-auslesen.html

Man kann zwar die Url auslesen, bin mir aber nicht sicher, ob diese dann aber in der Titelleiste angegeben werden kann, das die Seite ja nicht neu geladen wird und da kein AJAX vorliegt.

Falls Sie gut in Englisch sind, dürfen Sie sich da durchquälen... oder einfach mal selber googeln...
http://msdn.microsoft.com/library/defaul...ng_security.asp

 Antworten

 Beitrag melden
28.12.2007 16:20 (zuletzt bearbeitet: 28.12.2007 16:23)
#5 RE: Forum in iframe + adresszeile
avatar
Mitglied
Ich habe auf meiner Homepage ein PHP-Skript, mit dem ich per Parameter (der die einzubindende URL ist) alle möglichen Seiten in einen IFrame binden kann.

Nachteil: Die Url ändert sich nicht bei einer Seitenänderung im IFrame (nur wenn die Seite die den IFrame enthält einen anderen Parameter per Link übergibt) und die Homepageadresse wird vornedran angezeigt.

Beispiel:
http://florianzier.fl.ohost.de/?iframe=http://www.google.de

Allerdings ist es so möglich, aus der Website heraus direkt eine Seite des Forums im IFrame zu öffnen. Nur kann es sein, dass die Seiten des Forums die ebenfalls mit PHP-Skripten arbeiten nicht gleichzeitig auch Parameter übergeben bekommen können.

 Antworten

 Beitrag melden
30.12.2007 02:01
#6 RE: Forum in iframe + adresszeile
An
Mitglied

ich würd es gerne aus probiren kannst du mir den quelltext geben?


 Antworten

 Beitrag melden
30.12.2007 02:48 (zuletzt bearbeitet: 30.12.2007 03:05)
#7 RE: Forum in iframe + adresszeile
avatar
Mitglied
<?php
if(!empty($page) || !empty($iframe)) {
if (!empty($page)) {
if(file_exists("$page.html")) {
include("$page.html");
}
else if(file_exists("$page.htm")) {
include("$page.htm");
}
else if(file_exists("$page.php")) {
include("$page.php");
}
else {
include("404.php");
}
}

if (!empty($iframe)) { ?>
<div align="center" style="width:100%;height:100%;">
<iframe allowtransparency="true" scrolling="auto" marginheight="0" marginwidth="0" frameborder="0" style="width:794px;height:100%;margin:0px;padding:0;border:0px solid #dde5e9;" src="
<?php echo "$iframe"; ?>"></iframe>
</div>
<?php }
}
else {
include("home.html");
}
?>


Das orange markierte ist nur dann nötig, wenn ein zweiter Parameter (hier: page) seiten vom server aufrufen soll, also die dateien, die ich selbst mit inhalt gefüllt habe. Der Parameter benötigt keine Endungen wie .html, sondern prüft selbst, ob es so eine datei gibt (.htm, .html, .php wird momentan geprüft, beliebig erweiterbar).
else {
include("404.php");
}

bindet eine Fehlerseite ein, falls die Datei nicht gefunden wurde.

______________________________________________________________________________
______________________________________________________________________________


zum Eigentlichen:
if (!empty($iframe)) { ?>
überprüft, ob die Variable nicht leer ist, ansonsten wird durch
else {
include("home.html");
}

die hauptseite eingebettet (dieses else ist optional bei deinem problem, bei mir könnte es sonst aber sein, dass der Inhalt meiner Page leer bleibt.

<div align="center" style="width:100%;height:100%;">
<iframe allowtransparency="true" scrolling="auto" marginheight="0" marginwidth="0" frameborder="0" style="width:794px;height:100%;margin:0px;padding:0;border:0px solid #dde5e9;" src="
<?php echo "$iframe"; ?>"></iframe></div>
ist der eigentliche IFrame, da dieser aus html-Tags besteht werden auch vorher die PHP-Befehle unterbrochen (?>) und danach wieder geöffnet (<?php). Zwischendrin findet sich noch die PHP-Anweisung <?php echo "$iframe"; ?>, so wird in den normalen HTML-Quellcode der Platz für sich ändernde URLs als Quelle eingefügt.
Das <div> um den IFrame ist eigentlich egal, ich brauche es halt.

Ich hoffe du kennst dich ein wenig in HTML aus, damit du den Quellcode evtl. anpassen kannst.


________________________________________________________________________________

Wichtiger Code zusammengefasst:

<?php
if (!empty($iframe)) { ?>

<iframe allowtransparency="true" scrolling="auto" marginheight="0" marginwidth="0" frameborder="0" style="width:794px;height:100%;margin:0px;padding:0;border:0px solid #dde5e9;" src="<?php echo "$iframe"; ?>"></iframe>

________________________________________________________________________________


width:794px; und height:100%; müssen noch angepasst werden, Angaben in Pixeln (px) oder (%).
border:0px solid #dde5e9; gibt randbreite und farbe an (Farb-Angabe muss nicht sein, auch das ganze tag kann weggelassen werden.



Die Seiten werden in Zukunft so eingebettet:

http://www.server.de/phpseite.php?iframe=http://www.seiteimiframe.de
/verzeichnis/datei.htm


Alles was nach ?iframe= kommt, ist die Seite, die im IFrame angezeigt werden soll.
/verzeichnis/datei.htm müssen nicht angegeben sein, können es aber.

Entweder diese URL direkt im Browser eingeben oder auf der Homepage mit Links arbeiten, die diese URL angeben.


Ich hoffe dein Webserver kann PHP. Wenn du es nicht weißt, einfach Quellcode in einer Datei abspeichern (Sie muss mit .php enden!!! -> entweder kann dein Homepageprogramm gleich solche Dateien erstellen, oder einfach eine html-Seite erstellen, skript zwischen den Body-Tags einfügen, speichern und .html in .php umbenennen - kommt aufs gleiche raus). Jetzt nur noch die Datei auf deinen Webserver hochladen. Nun kannst du es mit dem Aufruf über die URL ausprobieren.


Falls dein Webserver kein PHP kann, könnte es vielleicht noch mit JavaScript funktionieren, das muss allerdings der Anwender aktiviert haben, da sonst die Seite nicht funktioniert.
Allerdings bin ich nicht der beste in JavaScript, wenn es nicht funktioniert, musst du warten bis jemand anders antwortet. Vielleicht ist es ja möglich, mein PHP-Skript irgendwie in JavaScript umzuschreiben.


Hoffe es war einigermaßen verständlich, kenne deine HTML-Kenntnisse halt auch nicht.
Bei Fragen oder Problemen meld dich einfach wieder hier! Viel Glück!

 Antworten

 Beitrag melden
Bereits Mitglied?
Jetzt anmelden!
Mitglied werden?
Jetzt registrieren!