Посоветуйте плиз – как правильно послать запрос POST посредством JavaScript и передать в запросе XML объект и как правильно принять его в PHP скрипте?
Сейчас я делаю так (xmlHttp экземпляр объекта XMLHttpRequest)
xmlHttp.open("POST", "./sample.php", true);
xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
xmlHttp.send( 'x=<?xml version="1.0" encoding="UTF-8" ?> <data><a>4</a><b>5</b></data>' );
а как это делать правильно? Так как мне кажется, что я делаю неправильно и/или коряво. И еще — как должен выглядеть правильный код на стоне клиента на php? А то конструкция
$result = $_POST['x'];
И последующий её разбор средствfми XML тоже представляются мне какими то корявыми. Я почему спрашиваю – смотрел руководство по ажакс на странице
http://jibbering.com/2002/4/httprequest.html
(параграф Using XMLHTTP with GOOGLE's SOAP API)
и там запорос передают просто как xml документ но не приводится код на стороне сервера – непонятно как в пхп это все обрабатывается.
LC> LC> $result = $_POST['x'];
LC>
LC> И последующий её разбор средствfми XML тоже представляются мне какими то корявыми. Я почему спрашиваю – смотрел руководство по ажакс на странице
LC> http://jibbering.com/2002/4/httprequest.html
LC> (параграф Using XMLHTTP with GOOGLE's SOAP API)
LC> и там запорос передают просто как xml документ но не приводится код на стороне сервера – непонятно как в пхп это все обрабатывается.
В РНР это обрабатывается при помощи функций для работы с XML:
http://md.php.net/xml
Здравствуйте, LowCoder, Вы писали:
LC>и там запорос передают просто как xml документ но не приводится код на стороне сервера – непонятно как в пхп это все обрабатывается.
Если я правильно понял проблему, то нужно что-то вроде
$raw = file_get_contents('php://input');
$xml = simplexml_load_string($raw);