HTML-Textfeld spuckt kein HTML aus

Blattspinat

Erfahrenes Mitglied
Halli Hallo liebe Tutorials.de User,

ich habe ein Problem, für das es wie fast immer eine ganz einfache und ganz plausible Lösung gibt. Problem: Ich habe ein Flashmovie mit einem dynamischen Textfeld. Dieses gibt den Inhalt einer Variable namens "inhalt" wieder. Das Textfeld hat bei "var" also "inhalt" bzw. "this.inhalt" drinstehen und heisst "textfeld_inahlt". Die Variable "inhalt" wird mit daten gefüllt, die aus einem externen php-Script eingelesen werden (siehe Code). Die Variable enthält dann einen html Quellcode.

Der Button "Als html wiedergeben [ <> ]" ist aktiv, sollte also funktionieren auch als html "gerendert" wiedergegeben werden.

Fülle ich aus dem Actionscript heraus die Variable "inhalt" mit (dem gleichen) html-Code, dann findet die AUsgabe auch korrekt statt, andernfalls wird eben nur der Quellcode ausgespuckt, ohne Veränderung. Ich benutze Flash CS3 Prof. mit Actionscript 2.0, kann aber auch 3.0 einstellen wenns nötig ist - funktioniert mit folgenden Scripten aber genausowenig:

PHP-Datei content_start.php:

PHP:
<?

$variable = '<p><font size=4>Willkommen</font></p>
<p>Die neue Version von Adobe Dreamweaver, nämlich cs3 ist hammer geil! Sie generiert automatisch stylesheets um den Quellcode sauber und strukturiert zu halten. Außerdem ist das Einbinden von HTML-Inhalten in Flash wesentlich einfacher geworden - Im Grunde hat Adobe so einen absolut perfekt zusammenspielenden Programmkomplex entwickelt und veröffentlicht. <img src="going/001.jpg" width="62" height="68">Im Flashprogramm könne, wie man sieht, sogar ganz einfach die kleinen Bildchen eingeblendet werden - genial!</p>
<p>Und wenn manchmal etwas merkwürdigerweise nicht so klappt, wie man das gerne hätte, dann liegt das in den meisten Fällen, an demjenigen, der davorsitzt! Viel Spaß noch weiterhin mit den Möglichkeiten, die die Adobe Creative Suite 3 Web Premium dem Benutzer bietet.</p>
<p>mfg<br>Frederick Löbig</p>';


echo "&content_start=".$variable."";
?>

Actionscript der Datei content_start.fla bzw. content_start.swf:

Code:
var lesen = new LoadVars();
lesen.load("content_start.php");

lesen.onLoad = function(geladen) {
    if (geladen) {    
    
        inhalt.text = this.content_start;    
    
    }
    
    else {}
};  

stop();

Vielen Dank für euere Hilfe!!

mfg
Freddy
 
ok danke, das ist schon einmal ein Schritt in die richtige Richtung. Da ich mir mein script aber anderweitig ein wenig zerschossen habe, musste ich es nochmal neu schreiben:

Code:
var lesen = new LoadVars();
lesen.load("content_start.php");

lesen.onLoad = function(geladen) {
    if (geladen) {    
    
        inhalt.htmlText = this.content_start;    
    
    }
    
    else {}
};

hat soweit (nicht) funktioniert, als dass mit der .text-Eigenschaft wieder nur der Quellcode ausgegeben wird. Mit der .htmlText-Eigensachaft wird jetzt aber gar nichts ausgespuckt - d.h. wenn ich die Datei lokal teste, dann schon (eben nur die Fragmente, die ein nicht interpretierter php-Code so erzeugt). Online aber bleibt das Textfeld leer, und der Browser läd und läd und läd... Die Flash-Datei wird abgespielt, aber er zeigt unten immer an, dass daten empfangen werden, findet aber kein Ende.
 
Hallo,

generell empfiehlt es sich, dem LoadVars()-Objekt schon vor dem Laden zu sagen, was es nach dem Laden machen soll. Also pack die onLoad-Funktion vor den load-Befehl.

Außerdem ist es unendlich mal formschöner, das else { } in eine Zeile mit dem } vom if zu packen, wenn denn überhaupt.

Hast du schonmal die php-Datei nur mit dem Browser geöffnet? Was bekomst du dort als Ausgabe? Wenn das Textfeld den html-Text unformatiert ausspuckt: ist es denn auch als htmlTextfeld eingestellt?

Liebe Grüße
jens
 
s.o., das Feld ist als HTML eingestellt. Die php-Datei im Browser sieht aus wie folgt:

PHP:
<?

$variable = '<p><font size=4>Willkommen</font></p>
<p>Die neue Version von Adobe Dreamweaver, nämlich cs3 ist hammer geil! Sie generiert automatisch stylesheets um den Quellcode sauber und strukturiert zu halten. Außerdem ist das Einbinden von HTML-Inhalten in Flash wesentlich einfacher geworden - Im Grunde hat Adobe so einen absolut perfekt zusammenspielenden Programmkomplex entwickelt und veröffentlicht. <img src="going/001.jpg" width="62" height="68">Im Flashprogramm könne, wie man sieht, sogar ganz einfach die kleinen Bildchen eingeblendet werden - genial!</p>
<p>Und wenn manchmal etwas merkwürdigerweise nicht so klappt, wie man das gerne hätte, dann liegt das in den meisten Fällen, an demjenigen, der davorsitzt! Viel Spaß noch weiterhin mit den Möglichkeiten, die die Adobe Creative Suite 3 Web Premium dem Benutzer bietet.</p>
<p>mfg<br>Frederick Löbig</p>';


echo "&content_start=".$variable."";
?>

und spuckt folgendes, formatiert, aus:

&content_start=
Willkommen

Die neue Version von Adobe Dreamweaver, nämlich cs3 ist hammer geil! Sie generiert automatisch stylesheets um den Quellcode sauber und strukturiert zu halten. Außerdem ist das Einbinden von HTML-Inhalten in Flash wesentlich einfacher geworden - Im Grunde hat Adobe so einen absolut perfekt zusammenspielenden Programmkomplex entwickelt und veröffentlicht. Im Flashprogramm könne, wie man sieht, sogar ganz einfach die kleinen Bildchen eingeblendet werden - genial!

Und wenn manchmal etwas merkwürdigerweise nicht so klappt, wie man das gerne hätte, dann liegt das in den meisten Fällen, an demjenigen, der davorsitzt! Viel Spaß noch weiterhin mit den Möglichkeiten, die die Adobe Creative Suite 3 Web Premium dem Benutzer bietet.

mfg
Frederick Löbig

mfg
Freddy
 
Zurück