PHP - generierter HTML-Code in Textarea abbilden

  • Hallo an alle Experten,

    Ich durchlebe gerade meinen 4. PHP-Tag. Da ich noch nicht mal eine Woche mit PHP arbeite brauche ich dringend eure Hilfe.

    Es geht um die Darstellung eines durch eine PHP-Seite generierten HTML-Codes. Der soll (wenn das möglich ist) ausgelesen werden und in ein Textarea eingefügt werden.

    Gedacht ist das folgender maßen:

    1. Ich bin auf einer Seite mit Formularfeldern (Listboxen, Kontrollkästchen) und wähle best. Werte aus. Dann drücke ich auf ein Button der die 2. Stufe auslöst.

    2. Durch den Buttonklick wurden mit der URL die Werte aus Schritt 1 in diese (PHP)-Seite übertragen. Die PHP-Seite verarbeitet die Eingaben in Kombination mit einer MySQL-Datenbank und generiert eine hübsche Tabelle (die ist wenn ich sie sehe natürlich schon in HTML-Code).

    3. Nun wird nicht diese Tabelle angezeigt, sondern eine 3. Seite, die ein Textarea enthält, in dem genau der Code drin steht (von <html> bis </html>) der zur Darstellung der hübschen Tabelle aus Schritt 2 notwendig wäre.

    ---> und das wäre alles.

    Also ich bin nun schon so weit das mir meine PHP-Seite die hübsche Tabelle generiert und dann natürlich anzeigt (das bräuchte ich aber gar nicht) ... Nun felht mir nur noch das Auslesen dieses generierten Codes und da hackt es bei mir. :?:

    Wenn einer von euch da ne Idee hätte wäre das echt super klasse!!!!! :D

    Ich bedanke mich schon im Vorraus für eure Hilfe und die Mühe die ihr euch macht.

    Danke

    LG
    Moruk

  • also du willst einen html-code anzeigen, und nicht "ausführen". das machst du am besten so (kann sein dass auch noch anders geht; weiß nicht):

    Code
    # $code is die variable wo dein text drauflieg
    $code = str_replace("<","&lt;",$code);
    $code = str_replace(">","&gt;",$code);

    was macht das?
    wie du sicher weißt haben alle sonderzeichen in html eine "besondere" darstellung. damit jetzt dein html-dings nicht ausgeführt wird, werden alle < mit einem $lt; ersetzt, damit auch in der ansicht dann ein < da ist. in etwa klar?

    /edit
    noch als tipp: das ersetzen solltest du generell schon beim eintragen machen, um bei der ausgabe keine fehler zu haben. ersetzt werden sollten folgende zeichen:
    >
    <
    "
    ; und & (durch eigene kombination, die du beim eintragen aber wieder rückgängig machen musst)

    ...und alle die noch irgendwie in einem quelltext vorkommen können...[/list]

  • Moin!

    Eine andere Variante wäre, denn Quelltext in einem Textarea auszugeben.
    Ich vermute mal, daß du eine Art Tag-Generator bauen willst, dann kann man mit einem Textarea als Ausgabemedium ...

    1. den Platz, den der angezeigte Quelltext benötigt auf deiner HP begrenzen (Scrolleisten)
    2. mit Javascript gleich den kompletten Quelltext markieren und (nur mit dem IE) in die Zwischenablage kopieren.

    G.a.d.M.

    ronald

  • :?

    Ich glaub das ich mich falsch ausgedrückt habe, oder ich steig nicht richtig hinter wie ihr das meint...

    Rocco: du meintest " # $code is die variable wo dein text drauflieg "
    -> ich habe leider noch keine Variable $code wo mein ?text? draufliegt. Genau die brauche ich ja. Am liebsten würde ich eine Variable haben die durch das Generieren mit dem HTML-Code gefüllt wird und dann (meinetwegen per Post-methode) weitergeschickt wird.

    Ronald: deine variante bringt mich auf eine Idee wie ich das umsetzten könnte. Ich bastell in die Ansicht-Seite (die mit dem generieten HTML-Code) mit der hübschen Tabelle einen Button "Zeige HTML-Code" der eine Javascript-Funktion startet, die den Quelltext makiert und dann in eine Variable speichert. Den Inhalt dieser Variablen könnte man dann wieder per Post an eine weitere Seite schicken und dort in ein Textarea einfügen..... RICHTIG??? Geht so was?

    Ich danke für eure Hilfe

    Liebe Grüße

    Moruk