Сервер в качестве запросов использует сообщения в формате XML которые отправляются серверу методом POST.
Формат запроса:
<?xml version="1.0" encoding="UTF-8"?>
<request type="pay">
<ps_code>123</ps_code>
<ps_tid>4444</ps_tid>
<ps_time>2009-10-26T15:09:23</ps_time>
<contract>51.76</contract>
<amount>10.00</amount>
</request>
Как получить эти данные из POST?
Сейчас сделал так обработку:
$string = <<<XML
<?xml version="1.0" encoding="UTF-8"?>
<request type="pay">
<ps_code>123</ps_code>
<ps_tid>4444</ps_tid>
<ps_time>2009-10-26T15:09:23</ps_time>
<contract>51.76</contract>
<amount>10.00</amount>
</request>
XML;
$xml = simplexml_load_string($string);
$type = (string) $xml->attributes();
$amount = (string) $xml->amount;
$contract = (string) $xml->contract;
$point = (string) $xml->point;
Теперь надо как-то вместо $string подставить то что придёт из POST. Как это сделать?
Спустя 42 минуты, 3 секунды (21.01.2011 - 22:00) SlavaFr написал(а):
если не найдеш в $GLOBALS['HTTP_POST_RAW_DATA'] тогда вытййани из phpinput://
примерчики: http://www.experts-exchange.com/Web_Develo...Q_23287584.html
примерчики: http://www.experts-exchange.com/Web_Develo...Q_23287584.html
Спустя 6 минут, 10 секунд (21.01.2011 - 22:07) Arni написал(а):
Я наверно в корне не понимаю ваш вопрос. А вот так вот просто нельзя чтоли? В чем трудность?
$string = $_REQUEST['имя переменной через которую отправили'];
Спустя 17 минут, 4 секунды (21.01.2011 - 22:24) SlavaFr написал(а):
Цитата (Arni @ 21.01.2011 - 19:07) |
Я наверно в корне не понимаю ваш вопрос. А вот так вот просто нельзя чтоли? В чем трудность?
|
так ты можеш прочитать пост если его по формуляру или по принципу name=value послали. Тогда пхп может отделить названия полей и их содержимое и инициализировать масивы $_POST,$_GET и $_REQUEST соответственно йетими данными. В данном случае он получает просто хмл без имен переменных. Похожим образом работает SOAP, REST, JSON-RPC и другие Webservices