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
Форумы портала PHP.SU :: Версия для печати :: GET запрос на другой сайт
Форумы портала PHP.SU » » XML и его обработка » GET запрос на другой сайт

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

1. Алексеей - 11 Января, 2012 - 16:05:51 - перейти к сообщению
Возник такой вопрос, есть сайт на юкозе, и есть еще один на своем хостинге, как я могу получить e-mail пользователя с сайта юкоз ?

Вот API юкоза:
http://w123[dot]do[dot]am/api/index/8-1
если зайти как пользователь то вы увидите свои данные, вопрос заключается в том что на другом сайте я хочу чтобы если кто то зайдет из моих пользователей на тот сайт который на своем хостинге, увидел свои данные. Проще всего объясню так:

В API есть переменная USER_EMAIL как ее вывести на другом сайте ?
или могу объяснить так:
как я могу взять свои данные с сайта юкоз на другой свой сайт ? просто чтобы показалось на html странице, я ее не буду использовать для скрипта, просто вставлю в html страницу
2. Viper - 11 Января, 2012 - 16:20:34 - перейти к сообщению
cURL
3. DeepVarvar - 11 Января, 2012 - 17:11:39 - перейти к сообщению
Или если на укозе админы не параноики, то хватит и file_get_contents.
4. Алексеей - 11 Января, 2012 - 18:29:48 - перейти к сообщению
Ребята, а готовый скрипт есть ? я не могу сам реализовать Огорчение
5. Viper - 12 Января, 2012 - 07:41:19 - перейти к сообщению
Алексеей готового нет Улыбка Вы сначала почитайте, а потом задавайте вопросы. Авось у вас и без нашей помощи получится ;)
6. snikers987 - 12 Января, 2012 - 10:07:54 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $sContent = file_get_contents('http://w123.do.am/api/index/8-1');
  2.  
  3. $xml = simplexml_load_string($sContent);
  4. echo $xml->params->param->value->struct->member[8]->value->string[0];
7. Алексеей - 12 Января, 2012 - 10:36:11 - перейти к сообщению
snikers987, спасибо за внимания, но ничего не показывает, я поставил таким образом:

PHP:
скопировать код в буфер обмена
  1. <?
  2. $sContent = file_get_contents('http://w123.do.am/api/index/8-1');
  3. $xml = simplexml_load_string($sContent);
  4. echo $xml->params->param->value->struct->member[8]->value->string[0];
  5. ?>


А как правильно написать ?
(Добавление)
Сделал таким вариантом, тоже на странице ничего не показывает:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $xml = simplexml_load_file("http://w123.do.am/api/index/8-1");
  3. echo $xml->USER_PROFILE."<br>";
  4. echo $xml->USER_EMAIL."<br>";
  5. echo $xml->USER_AVATAR."<br>";
  6. echo $xml->USER_USERNAME."<br>";
  7.  
  8. ?>
8. Алексеей - 12 Января, 2012 - 16:04:26 - перейти к сообщению
Ну Ребята помогите пожалуйста... это очень важно для меня, но я не могу решить данную проблему сам Огорчение
9. Мелкий - 12 Января, 2012 - 18:04:02 - перейти к сообщению
phpfaq.ru/debug - читали? Крайне рекомендую.

Код snikers987 верен. А почему ничего не отображается - посмотрите в исходный XML, email тупо пустой.
10. Алексеей - 13 Января, 2012 - 07:19:57 - перейти к сообщению
Тема закрыта, я решил ее совсем по другому. Не успел написать сюда.
snikers987, ваш код действительно рабочий, спасибо за помощь!
11. DeepVarvar - 13 Января, 2012 - 07:45:52 - перейти к сообщению
Алексеей, таки написали бы как именно решили.
12. Алексеей - 13 Января, 2012 - 09:33:48 - перейти к сообщению
DeepVarvar, Ну во первых в юкозе оказывается не разрешается просматривать api страницы другим пользователям, к странице имеет доступ только админ сайта, поэтому сделал таким образом:
PHP:
скопировать код в буфер обмена
  1. <?  
  2.        /* Данные авторизации */  
  3.        $auth[1] = "http://мой сайт";  
  4.        $auth[2] = 'login';  
  5.        $auth[3] = 'password';  
  6.        $curl_run = curl_init();  
  7.         $curl = array(  
  8.         CURLOPT_USERAGENT     => 'chrome',  
  9.         CURLOPT_REFERER     => $auth[1],  
  10.         CURLOPT_RETURNTRANSFER            => 1,  
  11.         CURLOPT_URL      => $auth[1].'/index/sub/',  
  12.         CURLOPT_POSTFIELDS     => 'user='.$auth[2].'&password='.$auth[3].'&rem=1&a=2&ajax=1&rnd='.rand(100, 999),  
  13.         CURLOPT_COOKIEJAR     =>  'cookie.dat'  
  14.         );  
  15.         curl_setopt_array($curl_run, $curl);  
  16.         curl_exec($curl_run);  
  17.         $curl['47'] = 0;  
  18.         $curl['10002'] = $auth[1].'/api/index/8-1';
  19.         curl_setopt_array($curl_run, $curl);
  20.         $sContent = curl_exec($curl_run);
  21.         $xml = simplexml_load_string($sContent);  
  22.         echo $xml->params->param->value->struct->member[8]->value->string[0];  
  23.    ?>

тут для начало авторизует а потом показывает данные Улыбка
а помогли мне на официальном форуме сообществ юкоза.
13. DeepVarvar - 13 Января, 2012 - 09:41:33 - перейти к сообщению
Алексеей, да мне как бы не нужно, однако вдруг кому будет надо и ваше решение спасет человека. Закатив глазки

 

Powered by ExBB FM 1.0 RC1