Прием Xml запроса на Php

  • Автор темы PavelM
  • Дата начала
P

PavelM

#1
Добрый день!

Кто может подсказать, как принимать XML-запрос в PHP?

Пример:
Клиент отправляет запрос:
Код:
<?php
function _GetAnswer($address, $xml){ 
$ch = curl_init($address); 
curl_setopt($ch, CURLOPT_HEADER, 0); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); 
curl_setopt($ch, CURLOPT_POST,1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); 
$result=curl_exec($ch); 
return $result; 
}

$xml=" 
<mypack>
<partner>partner</partner>
<password>blabla</password>
<type>subscribe</type> 
<text></text>
<Subscribers>
<Subscriber>123456</Subscriber>
<Subscriber>654321</Subscriber>
<Subscriber>413384</Subscriber>
</Subscribers>
</mypack>"; 

$answer=_GetAnswer("http://удаленный сервер/server.php", $xml); 
echo $answer; 

?>
Вопрос:
Как написать в PHP server.php, чтобы принимать этот XML запрос и отдавать какую-либо информацию клиенту?
 

vital

Больной Компом Детектед
29.01.2006
2 432
33
#2
Ну так курл эти параметры просто передает как index.php?'Ваши параметры'
т.е. приняты они будут точно так же, как любые переменные из $_GET[], $_POST[] т.е. просто обратитесь к ним как любым переменным из этих массивов.. В вашем случае данные передаются POST => и придут в массиве $_POST[]

Добавлено: А что бы потом обработать и потом еще и вернуть ответ клиенту.. Ну вызывайте снова курл, только на адрес клоиента)
 
A

Artem325

#3
А через JSON не проще?
И ещё. А как ответ отправить? Если через курл, то скрипт исходный не получит нужного ответа, а вызовется снова.