JimmyLikesSka
Mitglied
Hi, ich probier gerade einen online-xml-editor zu bauen, damit ich die inhalte einer flashsite bearbeiten kann, die eben in diesem xml-dok gespeichert sind.
habe insgesammt 3 dateien:
index.php:
speichern.php:
und eben die die datei inhalt.xml.
einlesen und speichern klappt soweit ganz gut, bloss nun zum problem:
wenn ich z.B ein tag <seite title="test test test"> habe dann wird daraus beim speichern <seite title="test_test_test"> hab probiert das mit str_replace und "_" und " " zu lösen was aber leider nicht funktioniert.
auch wenn ich einen link <a href="test.html">link</a> schreibe wird beim speichern <a href=\"test.html\">link</a> , sprich das wird maskiert... sehr unerwünscht.
danke für die antworten!
Gruss Julian
habe insgesammt 3 dateien:
index.php:
PHP:
<html><head><title>XML-MINI-CMS</title></head>
<body>
<form action="speichern.php" method="post">
<?php
$filename = '../inhalt.xml';
if(file_exists($filename)) {
$xml = simplexml_load_file($filename);
if($xml) {
foreach($xml->seite as $news) {
echo "<p>".$news['title']." : <br> <textarea cols=\"80\" rows=\"25\" name=\"".$news['title']."\" >".$news."</textarea></p>\n";
echo "<p><input type=\"submit\" value=\"Änderungen speichern!\" />\n";
}
}
}
?>
</form>
</body>
</html>
speichern.php:
PHP:
<title>Speichern</title><?php
$umlaute = array("ä", "ü", "ö", "ß", "Ä", "Ü", "Ö", "_");
$ersatz = array("ae", "ue", "oe", "ss", "Ae", "Ue", "Oe", " ");
$_POST_new = str_replace($umlaute, $ersatz, $_POST);
$xmlstr="<?xml version='1.0'?>";
$xmlstr.="<website>";
foreach($_POST_new as $key=>$value){
$xmlstr.="<seite title=\"".$key."\"><![CDATA[".$value."]]></seite>\n";
};
$xmlstr.="</website>";
$dom = new domDocument;
$dom->loadXML($xmlstr);
$test = $dom->save("../inhalt.xml");
echo "Speichern war erfolgreich!<br>\n";
echo "Es wurden ".$test." Byte geschrieben<br>\n";
echo "<a href=\"index.php\">zurück</a>";
?>
und eben die die datei inhalt.xml.
einlesen und speichern klappt soweit ganz gut, bloss nun zum problem:
wenn ich z.B ein tag <seite title="test test test"> habe dann wird daraus beim speichern <seite title="test_test_test"> hab probiert das mit str_replace und "_" und " " zu lösen was aber leider nicht funktioniert.
auch wenn ich einen link <a href="test.html">link</a> schreibe wird beim speichern <a href=\"test.html\">link</a> , sprich das wird maskiert... sehr unerwünscht.
danke für die antworten!
Gruss Julian