Neuigkeiten:

moziloCMS verwendet Cookies. Wenn Sie auf unserer Seite weitersurfen, stimmen Sie der Cookie-Nutzung zu Datenschutzerklärung
moziloCMS Layouts
moziloCMS Plugins

Hauptmenü

Dynamisches iframe

Begonnen von supercat, 19. Januar 2010, 11:18:09

« vorheriges - nächstes »

supercat

An verschiedenen Stellen im Forum wurde schon ausgiebig über das Includen von PHP-Dateien diskutiert. Die Mozilo-Entwickler haben dabei stets darauf hingewiesen, dass sie dieses Feature aus Gründen der Sicherheit in der index.php abgeschaltet haben (Stand: Version 1.11.2). Also sollte man daran nicht unnötigerweise herumfummeln - dachte ich mir und sann auf eine andere akzeptabler Lösung.

Diese Lösung ist für mich nun ein dynamisches iframe. D.h., wir machen ein Fenster auf, in dem eine andere Anwendung läuft. Und dieses Fenster passt sich der Größe dieser Anwendung oder auch einem statischen Inhalt (HTML-Seite) an.

Das Script ist zwar nicht auf meinem Mist gewachsen, aber ich war zumindest so fleißig, eine Vielzahl von Lösungen zu recherchieren und auszuprobieren und schließlich die Beste etwas anzupassen. Aber Schluss mit der Vorrede...

So geht es:
Folgender Schnipsel muss in den Header der aktuellen Template-Datei eingefügt werden:
<!-- iframe -->
<script type="text/javascript">
  var framefenster = document.getElementsByTagName("iFrame");
  var auto_resize_timer = window.setInterval("autoresize_frames()", 400);
  function autoresize_frames() {
    for (var i = 0; i < framefenster.length; ++i) {
        if(framefenster[i].contentWindow.document.body){
          var framefenster_size = framefenster[i].contentWindow.document.body.offsetHeight;
          if(document.all && !window.opera) {
            framefenster_size = framefenster[i].contentWindow.document.body.scrollHeight;
          }
          framefenster[i].style.height = framefenster_size + 'px';
        }
    }
  }
</script>
<!-- iframe -->

Im Mozilo bedient man sich nun den HTML-Syntax. Das sieht dann beispielsweise so aus:
[html|<iFrame src="informer/index.php" id="informer" name="informer" style="width:520px; height:170px; border:none; margin-left:5px; margin-right:0px; margin-bottom:0px;" scrolling="no" frameborder="0"><p>Ihr Browser kann leider keine eingebetteten Frames anzeigen und Sie scheinen auch JavaScript deaktiviert zu haben. Wenn Sie die Seite trotzdem sehen möchten, nutzen Sie bitte <a href="informer/index.php" target="_blank"><b><font color=blue>diesen Link</font></b></a>.</p></iFrame>]

In diesem Falle habe ich ein fluffiges Nachrichten-Tool von Ellen Baitinger eingebaut.



WICHTIG: Die Schreibweise des Tag muss immer iFrame - großes F - lauten. Sonst funzt es nicht. Gleichzeitig bleibt damit die Synthax des "stinknormalen" iframes unberührt. Die Lösung funzt mit dem aktuellen Firefox und dem aktuellen Internet Explorer. Auch deren Vorgänger mucken nicht. Mit steinalten Browsern habe ich es nicht getestet. Wer mit solchen Dingern unterwegs ist, sollte vielleicht doch mal über sich nachdenken ;)

Ach ja, falls sich jetzt jemand für das Nachrichten-Tool interessiert, so melde er sich. Mit Arvids selbstloser Hilfe habe ich es etwas abgewandelt. Frau Baitinger stellt zwar höchst interessante Scripte kostenlos zur Verfügung, aber ansonsten hüllt sie sich in Schweigen, sodass man selber knobeln muss...
Frage nicht nach meinem Alter. Ich kann doch nicht alles wissen ;-)

stefanbe

#1
Zitat von: "supercat"Mozilo-Entwickler haben dabei stets darauf hingewiesen, dass sie dieses Feature aus Gründen der Sicherheit in der index.php abgeschaltet haben (Stand: Version 1.11.2).
Das hast du Falsch Interpretiert das Sicherheits Risiko liegt im PHP Code denn du erstelst und dann mittels [php|DEIN PHP CODE] einbaust.

gruss stefanbe

supercat

#2
Lies meinen Satz wie er ist: Ich unterstelle den guten Jungs von Mozilo nicht, dass sie das Risiko wären - zumindest im nüchternen Zustand  :lol:  Logisch, die Gefahr liegt (womöglich) im includierten Code. Denn das Böse lauert immer und überall - besonders beim Anwender  :mrgreen:
Frage nicht nach meinem Alter. Ich kann doch nicht alles wissen ;-)

stefanbe

#3
Zitat von: "supercat"Also sollte man daran nicht unnötigerweise herumfummeln - dachte ich mir und sann auf eine andere akzeptabler Lösung.
Hätte den wohl noch dazu nehmen müssen :oops:  :lol:

gruss stefanbe

supercat

#4
Jo, aber nur wegen des Fummelns  ;) Hinten steht nämlich (korrekt zitiert) "andere akzeptabler Lösung" - "akzeptable" muss es natürlich heißen. Peinlich  :oops:  Aber der Code funzt trotzdem  :mrgreen:
Frage nicht nach meinem Alter. Ich kann doch nicht alles wissen ;-)

wasp

#5
Zitat von: "supercat"... Ich unterstelle den guten Jungs von Mozilo nicht, dass ...
ACHTUNG! : stefanbe == mozilo-Coder  ...   :!:  (sei nur mal festgehalten)  :lol:

supercat

#6
Erwürdiger Coder, Asche auf mein schütteres Haar. Wie konnte ich das ahnen  :cry:  So werde ich einen Topf Honig für Deine Stacheltiere besorgen, um des Meisters Stimmung aufzuhellen und die Hoffnung nicht zu verlieren, wiederkommen zu dürfen. Alle guten Jungs sind in mein Herz eingeschlossen.

So, jetzt holt mal einer einen Lappen. Der Schleim tropft ja schon überall herunter. Und noch eine wirklich wichtige Frage: Wo sind hier die guten Mädchen?  :D
Frage nicht nach meinem Alter. Ich kann doch nicht alles wissen ;-)