Toon posts:

[PHP+XML] Combineren van XML nodes

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een PHP script die een XML response genereert voor een AJAX applicaties. De opzet was dat een hoofdscript een XML Document genereert met de basis, hierna voert de hoofdscript de calls in de door de client verstuurde XML request uit in een aantal subfuncties. Deze functies moeten dus een response genereren in XML die dan in de response document (die al eerder door de hoofdscript aangemaakt was) opgenomen worden.

Als ik in een subfunctie een DOM document aanmaak, daar losse een losse response node (met daarin de data) aanmaak en deze node return naar de hoofdscript krijg ik een error van: 'Uncaught DOM exception with message Wrong Document Error'. Wat doe ik verkeerd en hoe zou het anders moeten?


Overigens krijg ik bij loadXML van domdocument (die laadt de in de post ontvangen string in) een waarschuwing dat de string leeg zou zijn, hierna bevat de domdocument echter wel het bedoelde xml en de string is toch echt niet leeg!

Code bij loadXML:
code:
1
2
3
4
5
6
7
8
9
10
$xml = ""; 
$putData = fopen("php://input", "r"); 
while($block = fread($putData, 1024)) 
{ 
  $xml .= $block; 
} 
fclose($putData);

$doc = new DOMDocument('1.0', 'utf-8');
$doc->loadXML($xml);


Waarschuwing: Warning: DOMDocument::loadXML() [<a href='function.loadXML'>function.loadXML</a>]: Empty string supplied as input in /var/www/corazong2/ws.php

[ Voor 6% gewijzigd door Verwijderd op 26-10-2006 13:23 ]


  • OxiMoron
  • Registratie: November 2001
  • Laatst online: 08-07-2025
Je hoeft geen XML te versturen via ajax, alles is mogelijk.

Ik snap niet helemaal waarom je vanuit de client XML zou posten.

[ Voor 36% gewijzigd door OxiMoron op 26-10-2006 13:58 ]

Albert Einstein: A question that sometime drives me hazy: Am I or are the others crazy?


  • Kettrick
  • Registratie: Augustus 2000
  • Laatst online: 22:44

Kettrick

Rantmeister!

Kan je niet beter een array/object bouwen en heen en weer gooien tussen de verschillende functies?

Dan kan je aan het eind van je script in een slag de XML bouwen,dit geeft je iets meer mogelijkheden in de toekomst en alles staat lekker bij elkaar :)

Verwijderd

Topicstarter
OxiMoron schreef op donderdag 26 oktober 2006 @ 13:57:
Je hoeft geen XML te versturen via ajax, alles is mogelijk.

Ik snap niet helemaal waarom je vanuit de client XML zou posten.
Ik wil graag communiceren in XML, later in SOAP. XML is hier veel handiger aangezien ik dan via SOAP rpc achtige taken uit kan voeren, ook kan ik via XML veel efficienter (en mooier) veel parameters mee sturen (bijvoorbeeld verwerken van registratie formulier) dan via bijvoorbeeld post of get.
RoeLz schreef op donderdag 26 oktober 2006 @ 14:00:
Kan je niet beter een array/object bouwen en heen en weer gooien tussen de verschillende functies?

Dan kan je aan het eind van je script in een slag de XML bouwen,dit geeft je iets meer mogelijkheden in de toekomst en alles staat lekker bij elkaar :)
Dat heb ik ook overwogen, ik zal inderdaad even kijken of dat hier veel handiger is. Toch wil ik weten of wat ik wil ook kan :P

Ik heb tot nu toe een object gebaseerde server kant gehad, daar wil ik graag vanaf en overschakelen naar functies die dynamisch de benodigde librarys laden aangezien ik tegen beperkingen aan loop in mijn huidige server.

[ Voor 40% gewijzigd door Verwijderd op 26-10-2006 14:07 ]


  • Kettrick
  • Registratie: Augustus 2000
  • Laatst online: 22:44

Kettrick

Rantmeister!

Verwijderd schreef op donderdag 26 oktober 2006 @ 14:01:

Dat heb ik ook overwogen, ik zal inderdaad even kijken of dat hier veel handiger is. Toch wil ik weten of wat ik wil ook kan :P
Volgens mij kan ik daar heel kort nee op antwoorden :)

Verwijderd

Topicstarter
Wat ik wil is ondertussen gelukt. Ik bouw nu de response eerst op als één groot array en laat deze vervolgens door een functie parsen tot een xml response. :)
Pagina: 1