Hallo Leute,
ich hab ne XML-Datei und ein PHP-Script. Wenn ich mit PHP etwas in die XML reinschreibe, steht das aber alles in einer Zeile. Und das ist nicht wirklich gut lesbar. Hier mal die Dateien.
XML vorher:
<?xml version="1.0" encoding="UTF-8"?>
<todo>
<anzahl nummer="2"/>
<punkt id="1350998255" unterpunkt="false">
<text>Neue Tags aus HTML2 in Datenbank einfügen</text>
<format b="1" i="0" u="0"/>
</punkt>
<punkt id="1351100724" unterpunkt="false">
<text>Bei Footer-Element löschen, warnung ausgeben, wenn noch aktiv</text>
<format b="0" i="0" u="0"/>
</punkt>
</todo>
PHP Code:
<?php
$todo=simplexml_load_file('todo.xml');
$anzahl=$todo->anzahl["nummer"];
$anzahl=$anzahl+1;
$punkt=$todo->addChild("punkt");
$punkt->addChild("text", "$_POST[text]");
$punkt->addAttribute("id", time());
$punkt->addAttribute("unterpunkt", false);
$format=$punkt->addChild("format");
if(isset($_POST["bold"])){
$format->addAttribute("b", 1);
} else {
$format->addAttribute("b", 0);
}
if(isset($_POST["italic"])){
$format->addAttribute("i", 1);
} else {
$format->addAttribute("i", 0);
}
if(isset($_POST["underline"])){
$format->addAttribute("u", 1);
} else {
$format->addAttribute("u", 0);
}
unset($todo->anzahl["nummer"]);
$todo->anzahl->addAttribute("nummer", $anzahl);
$handle = fopen("todo.xml", "wb");
fwrite($handle, $todo->asXML());
fclose($handle);
header ("Location: edit_todo.php")
?>
XML nachher:
<?xml version="1.0" encoding="UTF-8"?>
<todo>
<anzahl nummer="3"/>
<punkt id="1350998255" unterpunkt="false">
<text>Neue Tags aus HTML2 in Datenbank einfügen</text>
<format b="1" i="0" u="0"/>
</punkt>
<punkt id="1351100724" unterpunkt="false">
<text>Bei Footer-Element löschen, warnung ausgeben, wenn noch aktiv</text>
<format b="0" i="0" u="0"/>
</punkt>
<punkt id="1351350575" unterpunkt=""><text>E-Mail-Server einrichten</text><format b="0" i="1" u="0"/></punkt></todo>
Die Daten werden durch ein Formular übergeben.
Das ist nicht gut lesbar! Hat jemand Hilfe für mich?