За последние 24 часа нас посетили 18847 программистов и 1619 роботов. Сейчас ищут 928 программистов ...

xml_rpc sape

Тема в разделе "Прочие вопросы по PHP", создана пользователем inline, 21 авг 2010.

  1. inline

    inline Активный пользователь

    С нами с:
    21 май 2010
    Сообщения:
    466
    Симпатии:
    0
    PHP:
    1. function Call($url, $xml)
    2. {
    3.   $ch = curl_init();
    4.   curl_setopt($ch, CURLOPT_URL, $url);
    5.  
    6. // Меняем тип заголовка содержимого
    7.   curl_setopt ($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/xml"));
    8.  
    9.   curl_setopt($ch, CURLOPT_POST, 1);
    10.   curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
    11.   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    12.  
    13.  // Посылаем запрос на сервер
    14.   $result = curl_exec($ch);
    15.   curl_close($ch);
    16.   return $result;
    17. }
    18.  
    19.  
    20. $xml = "<?xml version=\"1.0\"?>
    21. <methodCall>
    22.   <methodName>sape.login</methodName>
    23.   <params>
    24.     <param>
    25.         <value><char>".$login."</char></value>
    26.          <value><char>".$password."</char></value>
    27.     </param>
    28.   </params>
    29. </methodCall>";
    30.  
    31.  $url = "http://www.sape.ru/api_xmlrpc.php";
    32.  
    33.  
    34.  
    35. print_r (Call($url, $xml));
    В ответ
    Логин и пароль 100% правильные
    В чем проблема? Может что не так делаю?
     
  2. Михаил

    Михаил Активный пользователь

    С нами с:
    12 июл 2009
    Сообщения:
    545
    Симпатии:
    0
    Адрес:
    Bielarus
    Попробуйте:
    PHP:
    1.  
    2. $method='sape.login';
    3. $login='LOGIN';
    4. $passw='XXXXXXX';
    5. //-----------------
    6.  
    7. $request=xmlrpc_encode_request($method,array($login,$passw));
    8. $option=array(
    9.       'method' => "POST",
    10.       'header' => "Content-Type: text/xml",
    11.       'content' => $request);
    12. $context=stream_context_create(array('http'=>$option));
    13. $file=file_get_contents("http://api.sape.ru/xmlrpc/", false,$context);
    14.  
    15. $response = xmlrpc_decode($file);
    16. print_r($response);
    17.  
    18.  
    Это по первому примеру отсюда:

    http://www.php.net/manual/en/function.xmlrpc-encode-request.php
     
  3. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    После этой темы у тебя хватает совести создавать тему в этом разделе? Ну и ну.