Eigener HTML Code soll von anderen eingebettet werden können

  • Moin Leute,
    ich möchte ein paar Daten (Werden über eine php aus der Datenbank gelesen und als html tabelle angezeigt) für andere zugänglich machen.
    Also das die anderen mit einem simplen html Code (zb.: <iframe src="http://meinedomain.de/daten.html">) die Daten auf ihrer Website anzeigen können.

    Das Problem dabei ist allerdings, dass die Tabelle unterschiedlich hoch sein kann. Also muss der Iframe immer von der höhe angepasst werden, was aufgrund von xss nicht geht :-/
    Wie würde man sowas lösen?

    Es muss ja kein iframe sein....
    Vielen Dank :)

  • Hi und Danke für den Tipp.

    Von der Idee her gar nicht schlecht,.
    Doch das würde ja bedeuten das die Personen, die meine Daten einbinden wollen, erstmal die helper.html auf Ihrem Server legen müssten.
    Hätte gern einen einfach HTML Code ohne zusätzliche Dateien anlegen zu müssen.

    Auf meinem Server kann ich für das System ruhig neue Dateien erstellen falls es notwendig ist.

    Hier noch ein Beispiel:
    Auf manchen Seiten kann man ein Gästebuch mit einem einfachen HTML code in die eigene Seite einbinden.
    Allerdings haben diese immer die gleiche höhe :-/

    Trotzdem Danke.
    Noch andere Ideen?
    VG Maja

  • Wenn deine anderen User PHP zur Verfügung haben, einfach einlesen lassen:

    PHP
    <?php
    
    
       echo file_get_contents("http://www.deineDomain.de/deinScript.php");
    ?>
  • Danke Bandit,
    das hatte ich auch schon rausgefunden und als Notlösung in Betracht gezogen.....

    schöner wäre es mit html, weil viele ein einfaches CMS haben und dort nur ein bisschen HTML Code einfügen können.

    Aber trotzdem Danke :)
    Noch jemand ne Idee?

    VG Maja

  • Danke Synaptic :)

    Bringt mich aber leider nicht weiter wenn ich es richtig verstanden habe....
    Ist ja wieder eine PHP Lösung.

    Noch jemand ne Idee? :)
    VG Maja

  • mmh ok

    also wenn du kein php nutzen kannst/willst
    dann musst du händisch die tag-html-entities umwandeln

    also schreib ganz normal deinen code, den du anbieten willst und wandel alle
    < in &lt; und > in &gt; um

  • Deine User könnten ja an beliebiger Stelle folgendes einbinden

    Code
    <script type="text/javascript" src="url/tabelle-js.php"></script>


    Und in dieser Datei bindest du deine Datenbank ein.

    PHP
    var tabelle = "<?php php script?>";
    document.write(tabelle);

    Einmal editiert, zuletzt von djheke (16. August 2012 um 12:11)

  • Moin djheke,
    das sieht interressant aus :)

    leider bleibt die Stelle an der das Script steht leer.
    Wenn ich über den Quellcode auf die src vom Script klicke erhalte ich die gewünschte Ausgabe von meinem php Script nur das davor noch:
    var tabelle = "
    und dahinter:
    ";
    document.write(tabelle);
    steht.

    Versuch:
    <script onload="alert(this.src);"type="text/javascript" src="http://meinedomain.de/tabelle.php"></script>
    liefert "http://meinedomain.de/tabelle.php" in der alert ausgabe.

    ne Idee?
    VG Maja

  • Eine interessante und sogar funktionierende Lösung von djheke:

    HTML
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <body>
    <script type="text/javascript" src="http://localhost/test.php"></script>
    <br><br> Oben sollte Hallo Welt stehen
    </body>
    </html>
    PHP
    var tabelle = "<?php echo 'Hallo Welt'; ?>";
    document.write(tabelle);
  • Wie geil ist das denn bitte?
    Danke, das läuft so wie ich es mir vorgestellt habe :)

    Info:
    Wenn die Ausgabe leer bleibt, liegt es (bei mir jedenfalls) an dem php Code. Hatte z.B. include ("db.php"); in der php Zeile was bei mir zum Fehler(leeres Ergbnis) führte.
    Habe dann die 4 Zeilen für Datenbank Verbindung direkt reinkopiert ;)

    Vielen Dank an alle Helfer/innen

    PS: richtig geil :)

  • nicht vergessen auch noch den richtigen header un mime-type bei dem php-js zu setzen :)

    und dann habe ich dich wohl falsch verstanden die ganze zeit.. hätteste ruhig mal sagen können..^^