Zurück   Flashforum > Flash und Server > Server-Seite allgemein

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-08-2007, 22:37   #1 (permalink)
ich lerne noch
 
Benutzerbild von Alpha.ONE
 
Registriert seit: Mar 2004
Ort: Konstanz
Beiträge: 267
PHP, DOMXML und HTML Text

Hallo,

Ich arbeite mich gerade in DOM XML ein und versuche HTML Text (wird in einem html Formular eingegeben)in einer XML Datei zu speichern.
Folgender php Code soll das erledigen:

PHP-Code:
$dom = new DOMDocument();
$dom->load("../../xml/News.xml");
    
$news $dom->createElement("news");

$content $dom->createElement("content");
$contentValue $dom->createCDATASection($_POST["content"]);
$content->appendChild($contentValue);

$news->appendChild($content);

$ref $dom->documentElement->firstChild;
$dom->documentElement->insertBefore($news$ref);

$dom->save("../../xml/News.xml"); 
Zusätzlich dazu werden noch Autor Titel und Datum gespeichert was wunderbar funktioniert.

Und hier die XML Datei die Dabei herauskommt:

PHP-Code:
<?xml version="1.0" encoding="utf-8"?>
<system>
    <news>
        <author>Ich</author>
        <date>27.08.2007</date>
        <title>Teste</title>
        <content><![CDATA[<img src=\"content/Logo.jpg\">]]></content>
    </news>
</system>
Wenn ich nun diese XML in Flash lade wird kein Bild angezeigt, obwohl das eigentlich gehen sollte. Weis jemand warum das nicht funktioniert?
Bin für jede Hilfe dankbar.

MfG Alpha
__________________
Auge um Auge - und die ganze Welt wird blind sein.
(Mahatma Gandhi)

Portfolio | deviantArt
Alpha.ONE ist offline   Mit Zitat antworten
Alt 28-08-2007, 06:24   #2 (permalink)
Inventar
 
Benutzerbild von Nightflyer
 
Registriert seit: Jul 2002
Beiträge: 6.882
Nun durch CDATA definierst du alles dazwischen als Zeichenkette welche von Browser NICHT interpretiert werden soll. Lass das also mal weg...
__________________
(\__/)
(='.'=)
(")_(")
Nightflyer ist offline   Mit Zitat antworten
Alt 28-08-2007, 12:34   #3 (permalink)
ich lerne noch
 
Benutzerbild von Alpha.ONE
 
Registriert seit: Mar 2004
Ort: Konstanz
Beiträge: 267
Hallo und danke für die Hilfe.

Zitat:
Nun durch CDATA definierst du alles dazwischen als Zeichenkette welche von Browser NICHT interpretiert werden soll
Ist das nicht zwingend wenn man den in der XML gespeicherten String als HTML Text in Flash verwenden will?

Habs vorher mit appendChild(...) probiert und es ging nichts (besser gesagt es wurde der Text angezeigt aber sowas wie Links; Bilder etc wurden ignoriert).

Ich weis jetzt nicht ob meine Lösung ideal ist aber so funktioniert es zumindest:

PHP-Code:
...
$content $dom->createElement("content");
$contentString str_replace("\\","",$_POST["content"]);
$contentValue $dom->createCDATASection($contentString);
... 

MfG Alpha
__________________
Auge um Auge - und die ganze Welt wird blind sein.
(Mahatma Gandhi)

Portfolio | deviantArt
Alpha.ONE ist offline   Mit Zitat antworten
Alt 28-08-2007, 15:37   #4 (permalink)
ontheoutsidelookingin
 
Benutzerbild von dassoud
 
Registriert seit: Jun 2001
Ort: Dortmund
Beiträge: 5.897
dafür gibt's stripslashes:

PHP-Code:
$contentString stripslashes($contentString); 
__________________

33rpm
dassoud ist offline   Mit Zitat antworten
Alt 30-08-2007, 14:20   #5 (permalink)
ich lerne noch
 
Benutzerbild von Alpha.ONE
 
Registriert seit: Mar 2004
Ort: Konstanz
Beiträge: 267
Hallo,

erstmal danke für den Hinweis das funktioniert schon mal wunderbar.
Jetzt besteht aber noch ein weiteres Problem. Wenn ich versuche etwas in die XML zu schreiben funktioniert das eine weile gut (ca drei bis vier mal) und danach ist die XML nicht mehr UTF-8 und ich bekomme einen Fehler.

Hier der Fehler:

Zitat:
Warning: DOMDocument::load() [function.DOMDocument-load]: Input is not proper UTF-8, indicate encoding ! Bytes: 0xDF 0xDF 0xDF 0xDF in file:///H%3A/Inte ...
Und das ist das php Script zum schreiben in die XML:

PHP-Code:
$dom = new DOMDocument();
$dom->load("../../xml/Products.xml");

// path
$path $dom->createElement("path");
$folderPath =str_replace("../../","",$picFolder);
$pathValue $dom->createTextNode(utf8_encode($folderPath.$name));
$path->appendChild($pathValue);
                    
// thumbnail
$thumbnail $dom->createElement("thumbnail");
$folderThumb str_replace("../../"""$thumbFolder);
$thumbnailValue $dom->createTextNode($folderThumb.$fileName.".jpg");
$thumbnail->appendChild($thumbnailValue);
                    
// label
$label $dom->createElement("label");
$labelValue $dom->createTextNode($_POST["label"]);
$label->appendChild($labelValue);
                    
$clothes $dom->createElement("clothes");
$clothes->setAttribute("id"$fileName);
        
$gender $dom->createElement("gender");
$genderValue $dom->createTextNode($_POST["gender"]);
$gender->appendChild($genderValue);
                        
$clothes->appendChild($path);
$clothes->appendChild($thumbnail);
$clothes->appendChild($label);
$clothes->appendChild($gender);
        
$dom->documentElement->appendChild($clothes);    
$dom->save("../../xml/Products.xml"); 
Ich hab keine Ahnung was da los ist. In der XML sieht alles richtig aus.
Hab auch schon probiert die Strings mit utf8_encode bzw html_entity_decode zu bearbeiten aber der Fehler taucht immer wieder nach drei bis vier mal schreiben auf.

Hat jemand eine Idee was da los ist?

MfG Alpha
__________________
Auge um Auge - und die ganze Welt wird blind sein.
(Mahatma Gandhi)

Portfolio | deviantArt
Alpha.ONE ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:43 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele