• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

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

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

PavelM

Добрый день!

Кто может подсказать, как принимать 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 запрос и отдавать какую-либо информацию клиенту?
 
V

vital

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

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

Artem325

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

Обучение наступательной кибербезопасности в игровой форме. Начать игру!