Ja weet ik.
Maar dan moet je als input een xml bestand hebben. Maar die heb ik niet.
Link gekopieerd
<?php
$xml = simplexml_load_string($bericht);
var_dump($xml);
?>
Link gekopieerd
Hier
<?php
$string = <<<XML
<deliveryreport>
<message id="msgID" sentdate="yyyyyy" donedate="xxxxx"
status="zzzzzz" />
</deliveryreport>
XML;
$xml = simplexml_load_string($string);
foreach($xml->message[0]->attributes() as $beschrijving => $naam) {
echo $beschrijving,'="',$naam,"\"\n";
}
?>
Maar hoe krijg ik $sentdate is yyyyyyy bijvoorbeeld?
Link gekopieerd
Een kwestie van even goed in de handleiding kijken hoe je met het simplexml object werkt:
<?php
$xml_string = '<deliveryreport>
<message id="msgID" sentdate="yyyyyy" donedate="xxxxx"
status="zzzzzz" />
</deliveryreport>';
$xml = simplexml_load_string($xml_string);
$sentdate = $xml->message['sentdate'];
echo $sentdate;
?>
Link gekopieerd
Bovenstaande string is géén XML, de XML-declaratie ontbreekt. Wordt het zo aangeleverd of is dit maar een stukje uit het totale bericht?
Link gekopieerd
Nee, het wordt zo aangeleverd.
Link gekopieerd
De script van Blanche werkt perfect.
Maar het wordt aangeleverd in meervoud:
<deliveryreport>
<message id="msgID1" sentdate="yyyyyy" donedate="xxxxx" status="zzzzzz" />
<message id="msgID2" sentdate="yyyyyy" donedate="xxxxx" status="zzzzzz" />
<message id="msgID3" sentdate="yyyyyy" donedate="xxxxx"
status="zzzzzz" />
<message id="msgID4" sentdate="yyyyyy" donedate="xxxxx"
status="zzzzzz" />
</deliveryreport>
Ik moet dus een foreach hebben... Hoe moet ik dat toevoegen aan de code van Blanche?
Link gekopieerd
<?php
$xml_string = '<deliveryreport>
<message id="msgID1" sentdate="yyyyyy" donedate="xxxxx" status="zzzzzz" />
<message id="msgID2" sentdate="yyyyyy" donedate="xxxxx" status="zzzzzz" />
<message id="msgID3" sentdate="yyyyyy" donedate="xxxxx"
status="zzzzzz" />
<message id="msgID4" sentdate="yyyyyy" donedate="xxxxx"
status="zzzzzz" />
</deliveryreport>';
$xml = simplexml_load_string($xml_string);
foreach($xml->message as $message)
{
echo $message['sentdate'].'<br />';
}
?>
Dan zou je het dus op deze manier aanpakken.
Link gekopieerd
Geweldig! Echt bedankt ;)
Nu kom ik bij het volgende probleem:
Hun server laadt mijn pagina met het voorgaande code:
<deliveryreport>
<message id="msgID1" sentdate="yyyyyy" donedate="xxxxx" status="zzzzzz" />
<message id="msgID2" sentdate="yyyyyy" donedate="xxxxx" status="zzzzzz" />
<message id="msgID3" sentdate="yyyyyy" donedate="xxxxx"
status="zzzzzz" />
<message id="msgID4" sentdate="yyyyyy" donedate="xxxxx"
status="zzzzzz" />
</deliveryreport>
Ik kan dus geen $_GET doen omdat het code niet in de url zit.
Wat moet ik dan doen?
Link gekopieerd