Webmaster
Hallo ich bitte Euch mir zu helfen meinen Klemmer zu finden.
Ich möchte eine xml-Datei erzeugen die so aussehen sollte:
Hier mein php-Script:
Leider sieht sie aber so aus:
Was mache ich falsch?
Danke im voraus
winne52
Ich möchte eine xml-Datei erzeugen die so aussehen sollte:
Code:
<?xml version="1.0" encoding="UTF-8"?>
-<units>
-<unit unitownerid="123456" internalunitid="2213" internalunitid2="" container="availability">
-<availability_year>
<availability year="2016" start="AAAAAOOOOOOAAAAAAAAAAAAAAAAAAAAABBBBAAAAAAAAAAAAAAAAAAAAAAAAAA" />
<availability year="2017" start="BBBBBBBBBBBBBBBBBBBOOOOOOBBBBBBBBBBBBBBBBBBBBBBBAAAABBBBBBBBBB" />
<availability year="2018" start="AAAAAAAAAAAAOOOOOOOOOOOOOOOOOOOOOAAAAAAAAAAAAAOOBBBBBBBBBBAAAA" />
</availability_year>
</unit>
</units>
Hier mein php-Script:
PHP:
<?php
$year1 = date("Y");
$year2 = $year1+1;
$year3 = $year1+2;
$dom = new DOMDocument('1.0', 'utf-8');
$root = $dom->createElement('units');
$unitownerid = '123456';
$internalunitid = '2213';
$jahr1 = 'AAAAAOOOOOOAAAAAAAAAAAAAAAAAAAAABBBBAAAAAAAAAAAAAAAAAAAAAAAAAA';
$jahr2 = 'BBBBBBBBBBBBBBBBBBBOOOOOOBBBBBBBBBBBBBBBBBBBBBBBAAAABBBBBBBBBB';
$jahr3 = 'AAAAAAAAAAAAOOOOOOOOOOOOOOOOOOOOOAAAAAAAAAAAAAOOBBBBBBBBBBAAAA';
$element1 = array( $year1 => $jahr1);
$element2 = array( $year2 => $jahr2);
$element3 = array( $year3 => $jahr3);
$dom->appendChild($root);
$root->appendChild($firstNode = $dom->createElement("unit"));
$firstNode->setAttribute("container", "availability");
$firstNode->setAttribute("internalunitid2", "");
$firstNode->setAttribute("internalunitid", $internalunitid);
$firstNode->setAttribute("unitownerid", $unitownerid);
$firstNode->appendChild($firstNode = $dom->createElement("availability_year"));
foreach ($element1 as $value1 => $jahr1) {
$firstNode->appendChild($firstNode = $dom->createElement("availability"));
$firstNode->setAttribute("start", $jahr1);
$firstNode->setAttribute("year", $value1);
}
foreach ($element2 as $value2 => $jahr2) {
$firstNode->appendChild($firstNode = $dom->createElement("availability"));
$firstNode->setAttribute("start", $jahr2);
$firstNode->setAttribute("year", $value2);
}
foreach ($element3 as $value3 => $jahr3) {
$firstNode->appendChild($firstNode = $dom->createElement("availability"));
$firstNode->setAttribute("start", $jahr3);
$firstNode->setAttribute("year", $value3);
}
header('Content-type: text/xml; utf-8');
echo $dom->saveXML();
//echo $dom->save("availability.xml");
?>
Leider sieht sie aber so aus:
Code:
<?xml version="1.0" encoding="UTF-8"?>
-<units>
-<unit unitownerid="123456" internalunitid="2213" internalunitid2="" container="availability">
-<availability_year>
-<availability year="2016" start="AAAAAOOOOOOAAAAAAAAAAAAAAAAAAAAABBBBAAAAAAAAAAAAAAAAAAAAAAAAAA">
-<availability year="2017" start="BBBBBBBBBBBBBBBBBBBOOOOOOBBBBBBBBBBBBBBBBBBBBBBBAAAABBBBBBBBBB">
<availability year="2018" start="AAAAAAAAAAAAOOOOOOOOOOOOOOOOOOOOOAAAAAAAAAAAAAOOBBBBBBBBBBAAAA"/>
</availability>
</availability>
</availability_year>
</unit>
</units>
Was mache ich falsch?
Danke im voraus
winne52