Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: возвращает 1. И как быть?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
Proffessional
Отправлено: 17 Мая, 2011 - 16:47:20
Post Id



Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Апр. 2011  
Откуда: Москва, Россия


Помог: 0 раз(а)




Ребята, помогите!
Я использую [URL="http://scripts.incutio.com/xmlrpc/"]IXR Library[/URL]. Написал простой код,
PHP:
скопировать код в буфер обмена
  1. $Client = new IXR_Client('http://www.site.com/interface/xmlrpc');
  2. echo '<pre>';
  3. $Challenge = $Client->query('LJ.XMLRPC.getchallenge');
  4. print_r($Challenge);

Принтит он 1. И всё. Так отвечает используемый в фреймворке cURL если не установить параметр CUROPT_RETURNTRASFER в 1. НО в фреймворке именно так и сделано. Самое странное, что я им уже пользовался без таких проблем. ДОЛЖЕН ВЫВОДИТСЯ ответ сервера! Как с этим разобраться? помогите!:wall:


-----
<?php ?> - идеальная программа на php
 
 Top
EuGen Администратор
Отправлено: 17 Мая, 2011 - 16:50:20
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




http://phpfaq[dot]ru/debug
попробуйте


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Proffessional
Отправлено: 17 Мая, 2011 - 16:57:42
Post Id



Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Апр. 2011  
Откуда: Москва, Россия


Помог: 0 раз(а)




EuGen пишет:
http://phpfaq[dot]ru/debug
попробуйте

Тот самый легендарный EuGen?! Вот это да!

Я прочитал. это я уже делал. Даже выставлял

что включает CUTOPT_VERBOSE. Вызовы отправляются и принимаются, но переменная не принимает значение, полученное от сервера. Ничего не могу понять!...

(Отредактировано автором: 17 Мая, 2011 - 17:00:09)



-----
<?php ?> - идеальная программа на php
 
 Top
EuGen Администратор
Отправлено: 17 Мая, 2011 - 16:59:53
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Не очень понятен сарказм. Я ведь наперед не могу точно знать, что именно Вы делали.
Посмотрите, что же от сервера приходит. И если не приходит, то исследуйте проблему там.
Так как конкретного Вы ничего не предоставили, то и ответ может быть только в общих чертах.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Proffessional
Отправлено: 17 Мая, 2011 - 17:03:18
Post Id



Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Апр. 2011  
Откуда: Москва, Россия


Помог: 0 раз(а)




EuGen, это не сарказм! Я на вашем учебнике программировать учился (и учусь Улыбка

Ну, вот код, как есть:
PHP:
скопировать код в буфер обмена
  1. include('IXR_Library.php');
  2. //get challenge from LJ and create auth_response
  3. $Lj = new IXR_Client('http://www.livejournal.com/interface/xmlrpc');
  4. echo '<pre>';
  5. $LjChallenge = $Lj->query('LJ.XMLRPC.getchallenge');
  6. print_r($LjChallenge);

- постилка в жж.
Ответы сервера такие, как и должны быть, вот дебаг информация:
CODE (htmlphp):
скопировать код в буфер обмена
  1. POST /interface/xmlrpc HTTP/1.0
  2. Host: www.livejournal.com
  3. Content-Type: text/xml
  4. User-Agent: The Incutio XML-RPC PHP Library
  5. Content-Length: 114
  6.  
  7. <?xml version="1.0"?>
  8. <methodCall>
  9. <methodName>LJ.XMLRPC.getchallenge</methodName>
  10. <params>
  11. </params></methodCall>
  12.  
  13.  
  14.  
  15. HTTP/1.1 200 OK
  16. Server: GoatProxy 1.0
  17. Date: Tue, 17 May 2011 12:30:06 GMT
  18. Content-Type: text/xml
  19. Connection: close
  20. X-AWS-Id: cws10
  21. SOAPServer: SOAP::Lite/Perl/0.710.08
  22. Content-Length: 510
  23. X-Varnish: 474379162
  24. Age: 0
  25. X-VWS-Id: bil1-varn15
  26. X-Gateway: bil1-swlb04
  27.  
  28. <?xml version="1.0" encoding="UTF-8"?><methodResponse><params><param><value><struct><member><name>auth_scheme</name><value><string>c0</string></value></member><member><name>server_time</name><value><int>1305635406</int></value></member><member><name>challenge</name><value><string>c0:1305633600:1806:60:VGZASSeBOf4SM97ex46Z:7d097110695e570b4b3e8219a3fa266f</string></value></member><member><name>expire_time</name><value><int>1305635466</int></value></member></struct></value></param></params></methodResponse>
  29.  


-----
<?php ?> - идеальная программа на php
 
 Top
EuGen Администратор
Отправлено: 17 Мая, 2011 - 17:09:28
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




А Вы уверены, что используете библиотеку правильно, в соответствии с ее API?
Вот к примеру бегло посмотрел, так есть: http://scripts[dot]incutio[dot]com/xmlrp[dot][dot][dot]construction.php
Где есть даже пример:
Цитата:
// Create the client object
$client = new IXR_Client('http://scripts.incutio.com/xmlrpc/foldoc/server.php');

// Run a query for PHP
if (!$client->query('foldoc.getEntry', 'php')) {
die('Something went wrong - '.$client->getErrorCode().' : '.$client->getErrorMessage());
}

// Display the result
echo '<pre>';
print_r($client->getResponse());
echo '</pre>';

А у Вас не вызываются сответствующие методы. Детально не читал, но подозреваю, что вдумчивое прочтение их документации Вам поможет.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Proffessional
Отправлено: 17 Мая, 2011 - 17:14:02
Post Id



Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Апр. 2011  
Откуда: Москва, Россия


Помог: 0 раз(а)




Я уже выучил почти всё что там написано! Только несколько скудно...
Едиственное что я не стал делать это в if смотреть на то работает или нет, я на debug это смотрю.
Принять-то XML ответ можно только в переменную! И как я видел это так и делается.


-----
<?php ?> - идеальная программа на php
 
 Top
EuGen Администратор
Отправлено: 17 Мая, 2011 - 17:16:24
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Так у Вас же проблема в том, что не приходит ответ, верно? Если нет, то что мешает вызвать getresponse и потом делать с полученной переменной что хочется (распечатать, показать на экране, записать в БД и т.п.)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Proffessional
Отправлено: 17 Мая, 2011 - 17:21:35
Post Id



Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Апр. 2011  
Откуда: Москва, Россия


Помог: 0 раз(а)




EuGen пишет:
Так у Вас же проблема в том, что не приходит ответ, верно? Если нет, то что мешает вызвать getresponse и потом делать с полученной переменной что хочется (распечатать, показать на экране, записать в БД и т.п.)

Штука как раз в том, что ответ приходит, но переменной присваивается не то, что отвечает сервер, а 1 - мол, запрос удачно отправлен. то же само происходит с cURL если не задат параметр RETURTRANSFER равный 1.


-----
<?php ?> - идеальная программа на php
 
 Top
EuGen Администратор
Отправлено: 17 Мая, 2011 - 17:25:18
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Тогда, похоже, дело в том, что возвращает сам сервер. То есть он просто другое не умеет отправлять.
Может, тогда дело в том, что Вы некорректно обращаетесь к серверу?


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Proffessional
Отправлено: 17 Мая, 2011 - 17:42:16
Post Id



Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Апр. 2011  
Откуда: Москва, Россия


Помог: 0 раз(а)




EuGen пишет:
Тогда, похоже, дело в том, что возвращает сам сервер. То есть он просто другое не умеет отправлять.
Может, тогда дело в том, что Вы некорректно обращаетесь к серверу?

Там всё в точности по документации.
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?xml version="1.0" encoding="UTF-8"?><methodResponse><params><param><value><struct><member><name>auth_scheme</name><value><string>c0</string></value></member><member><name>server_time</name><value><int>1305635406</int></value></member><member><name>challenge</name><value><string>c0:1305633600:1806:60:VGZASSeBOf4SM97ex46Z:7d097110695e570b4b3e8219a3fa266f</string></value></member><member><name>expire_time</name><value><int>1305635466</int></value></member></struct></value></param></params></methodResponse>

Просто это НЕ СОХРАНИТЬ В ПЕРЕМЕННОЙ, проблема только в этом.


-----
<?php ?> - идеальная программа на php
 
 Top
EuGen Администратор
Отправлено: 17 Мая, 2011 - 17:48:32
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Да с чего не сохранить-то.
Например для curl
PHP:
скопировать код в буфер обмена
  1.  
  2. $ch = curl_init();
  3. curl_setopt($ch, CURLOPT_URL, $url);
  4. curl_setopt($ch, CURLOPT_HEADER, 0);
  5. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  6. $result = curl_exec($ch);
  7.  

-это если Вы опечатались, когда указывали директиву:
Proffessional пишет:
если не установить параметр CUROPT_RETURNTRASFER в 1

Далее, всегда есть функции ob_
http://php.su/functions/?ob_start
и
http://php.su/functions/?ob_get_contents
а так же остальное
http://php.su/functions/?ob_


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Proffessional
Отправлено: 17 Мая, 2011 - 17:52:23
Post Id



Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Апр. 2011  
Откуда: Москва, Россия


Помог: 0 раз(а)




Спасибо, попробую. Только странно тогда что-то получается с этим фреймворком...
(Добавление)
EuGen, извините что так Вас мучаю (я Ваш поклонник Закатив глазки ), но ничего не помогает. Сделал так
PHP:
скопировать код в буфер обмена
  1. $Lj = new IXR_Client('http://www.livejournal.com/interface/xmlrpc');
  2. echo '<pre>';
  3. $Lj->query('LJ.XMLRPC.getchallenge');
  4. $LjChallenge = ob_end_flush();
  5. print_r($LjChallenge);

выводит туже единицу.
Ведь должно быть как в курле $variable = наш запрос(). И так делают. http://www[dot]likhachev[dot]net/2008/03[dot][dot][dot]pc-crossposting/
Замучился... Огорчение


-----
<?php ?> - идеальная программа на php
 
 Top
EuGen Администратор
Отправлено: 18 Мая, 2011 - 09:13:01
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




А если напрямую через xml rpc?
Скажем, как здесь (см. пример):
http://ru.php.net/manual/en/func...code-request.php


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Proffessional
Отправлено: 18 Мая, 2011 - 10:05:38
Post Id



Новичок


Покинул форум
Сообщений всего: 31
Дата рег-ции: Апр. 2011  
Откуда: Москва, Россия


Помог: 0 раз(а)




Активировал расширение, перезапустился (у меня Denwer со всеми модулями) но на строке
$request = xmlrpc_encode_request('LJ.XMLRPC.getchalenge');
он говорит Call to undefined function. Не работает.
А может есть простой cURL-based фреймворк для xml-rpc? Можно и самому написать, это не так сложно, но не удобно получается. Ниндзя

(Отредактировано автором: 18 Мая, 2011 - 10:28:53)



-----
<?php ?> - идеальная программа на php
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« XML и его обработка »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB