Ik probeer een simpel script te maken op een php pagina waar je d.m.v. een http post xml data kan posten en ik wil dat dan graag uitlezen en verwerken.
Wanneer ik het volgende in mijn script zet:
<?php
$data = empty( $_REQUEST['data'] ) ? '' : $_REQUEST['data'];
echo $data;
?>
Krijg ik netjes de post data te zien (en dat is de XML data) denk aan zoiets:
<?xml version="1.0" encoding="utf-8"?>
<info>
<voornaam>Sebas</voornaam>
<achternaam>...</achternaam>
<tel>06123456789</tel>
</info>
Maar wanneer ik het volgende gebruik:
<?php
$postData = file_get_contents('php://input');
$xml = simplexml_load_string($postData);
echo $xml;
?>
Dan blijft alles leeg...
Wanneer ik dit doe:
<?php
$postData = file_get_contents('php://input');
$xml = simplexml_load_string($postData);
echo $postData ;
?>
Krijg ik het volgende te zien (wel meer maar dit is een deel van wat ik terugkrijg):
data=%3C%3Fxml+version%3D%221.0%22+encoding%3D%22UTF-8%22%3F%3E%0A%3
Wat doe ik fout waardoor de simplexml_load_string niet werkt?
En hoe zou ik de XML data vanuit de post kunnen verwerken zodat ik kan gaan filteren op de tags die erin komt of die voldoen aan bepaalde waardes?