xml sonderzeichen trotz umwandlung => problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • tritium
    antwortet
    Ok, gut, dankeschön =)

    Einen Kommentar schreiben:


  • PHP-Desaster
    antwortet
    Entweder wandelst du auch nur die XML-Entitäten <>&" um und lässt die Umlaute, wie sie sind, oder du lädst deinen Inhalt per loadHTML, das sollte dann gehen. Besser ist aber die erste Alternative. Lösung ist htmlspecialchars statt htmlentities.

    Einen Kommentar schreiben:


  • tritium
    antwortet
    Ok, ich glaub ich habs mir selber beantwortet: http://de.selfhtml.org/inter/zeichenkodierungen.htm
    Also ich glaub zumindest dass das die Antwort dafür ist^^
    Gruß, ChriS.

    Einen Kommentar schreiben:


  • tritium
    hat ein Thema erstellt xml sonderzeichen trotz umwandlung => problem.

    xml sonderzeichen trotz umwandlung => problem

    Hey Leute,
    Ich spiel seid einiger Zeit mit xml rum, und habe jetzt ein Problem beim abspeichern eines neuen Eintrags per php. Ich beschreibe mal die wichtigsten Schritte der Reihe nach, und komm am Ende zum Problem. Als Beispiel-String hab ich ma "<p>Über alle Hügel und Käffer</p>" genommen:
    Text wird empfangen:
    PHP-Code:
    $content htmlentities(stripslashes($_POST['content'])); //&lt;p&gt;&Uuml;ber alle H&uuml;gel und K&auml;ffer&lt;/p&gt; 
    Text wird(mit weiteren Daten) in einen string geschrieben:
    PHP-Code:
    $newxml = (
    "<?xml version='1.0' encoding='UTF-8' ?> 
        \n<notes>
            <title>$title</title>
            <content>$content</content>
            <timestamp>$timestamp</timestamp>
            <category>$category</category>
        </notes>\n
    "); 
    // <?xml version='1.0' encoding='UTF-8' ?> 
    //  <notes>
    //    <title>test</title>
    //    <content>&lt;p&gt;&Uuml;ber alle H&uuml;gel und K&auml;ffer&lt;/p&gt;</content>
    //    <timestamp>1195675391</timestamp>
    //    <category>Sonstiges</category>
    //  </notes>

    Nun wird erst mal alles in utf-8 encodet:
    PHP-Code:
    $newxml utf8_encode($newxml); 
    String wird ins Objekt geladen:
    PHP-Code:
    $new DOMDocument::loadXML($newxml);  // load new entry 
    So, und an dieser Stelle mekert er jetzt, wenn ichs später durchlaufen lasse, und kommt mit folgender Fehlermeldung:
    Warning: DOMDocument::loadXML() [function.DOMDocument-loadXML]: Entity 'Uuml' not defined in Entity

    Und ich hab keine Ahnung wieso der des macht. Vorher hatte ich den content in <![CDATA[ ... ]]> gestellt, da gings reibungslos, aber das musste ich jetzt aus anderen Gründen aufgeben.
    Hab erst gedacht, dass des vll was mit dem utf8_encode() ding zu tun hat, hab dann allerdings festgestellt, dass man da auch utf8_decode hinschreiben, bzw es auch einfach weglassen kann, und das nix am Ergebnis, nämlich der Fehlermeldung, ändert (also die bleibt völlig gleich)
    Ich hoffe ihr könnt mir helfen =)
    Gruß, ChriS.
Lädt...
X