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 :: Подскажите как отпрвить запрос по ссылке

 PHP.SU

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


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

> Описание: Отпрвить запрос по ссылке и получить результат в формате xml
jack_frost
Отправлено: 04 Мая, 2017 - 14:48:31
Post Id


Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Авг. 2016  


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




Подскажите, пожалуйста уже несколько дней бьюсь над задачей и ничего не получается.
Задача состоит в следующем:
Из формы беру данные Логин/Пароль и их нужно передать GET запросом по ссылке на сервер. А от туда я должен получить результат в виде xml таблицы.
Ссылка идет такой своеобразный вид:
https://dataxp.net/api.cgi?<Request><get><login_name>$login</login_name><login_password>$pass</login_password></get></Request>
Если ее вставить в браузер самому (с данными вместо переменных $login и $pass) то мне отображается xml таблица.
А вот если ее присвоить какой-то переменной для дальнейшей работы - то она кардинально меняется и в результате ничего не получается.
Пример:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $url = 'https://dataxp.net/api.cgi?<Request><get><login_name>qw100b231</login_name><login_password>382761</login_password></get></Request>';
  3. echo $url;
  4. ?>

В результате видим
PHP:
скопировать код в буфер обмена
  1. https://dataxp.net/api.cgi?qw100b231382761

Так вот причина в такой своеобразной ссылке или я что-то не так делаю?
И как лучше отправлять GET запросы на сервер?

(Отредактировано автором: 04 Мая, 2017 - 15:43:04)

 
 Top
andrewkard
Отправлено: 04 Мая, 2017 - 21:13:18
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


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




jack_frost пишет:
И как лучше отправлять GET запросы на сервер?

имя=значение после ?

http://localhost/script.php?name=имя
 
 Top
jack_frost
Отправлено: 08 Мая, 2017 - 12:54:42
Post Id


Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Авг. 2016  


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




Ну с запросом я вроде разобрался.
PHP:
скопировать код в буфер обмена
  1. function curl($url){
  2. $ch = curl_init($url);
  3. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);  
  4. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
  5. $data = curl_exec($ch);
  6. if(curl_errno($ch))
  7.     print curl_error($ch);
  8. else
  9.     curl_close($ch);
  10.     return $data;
  11. }

В результате я получаю
CODE (html):
скопировать код в буфер обмена
  1. <Response>
  2.  <DateTime>2017-05-08 10:26:35</DateTime>
  3.  <AccountInfo>
  4.   <FullName>Моисеенко А. В.</FullName>
  5.   <Addr>Радченко ул., д. 16, кв. 2</Addr>
  6.   <BalanceCurrent>317.10</BalanceCurrent>
  7.  </AccountInfo>
  8. </Response>]

И теперь мне нужно парсить эту $data (в которой находится код html)

Но в результате ничего. В чем может быть проблема?
Как можно парсить xml который в нутри переменной?

(Отредактировано автором: 08 Мая, 2017 - 12:56:50)

 
 Top
andrewkard
Отправлено: 08 Мая, 2017 - 13:42:04
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


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




jack_frost пишет:
Но в результате ничего. В чем может быть проблема?

Работает:
PHP:
скопировать код в буфер обмена
  1.  
  2. $xml = <<<EOF
  3. <Response>
  4.  <DateTime>2017-05-08 10:26:35</DateTime>
  5.  <AccountInfo>
  6.   <FullName>Моисеенко А. В.</FullName>
  7.   <Addr>Радченко ул., д. 16, кв. 2</Addr>
  8.   <BalanceCurrent>317.10</BalanceCurrent>
  9.  </AccountInfo>
  10. </Response>
  11. EOF;
  12. $xml = simplexml_load_string($xml);
  13. print_r($xml->DateTime);
  14.  

SimpleXMLElement Object ( [0] => 2017-05-08 10:26:35 )
Видимо у Вас в ответе что то еще затесалось, посмотрите внимательно
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTTP и PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB