Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: выполнить запрос на другой странице
 
 автор: *m*   (25.10.2011 в 12:30)   письмо автору
 
 

на странице index я получаю данные с удаленного сервера,
вывожу эти данные в цикле используя постраничную навигацию,
внутри, основного цикла, есть еще один цикл, в котором делается xml запрос,
он перестает работать когда появляется get параметр. (то есть при переходе по страницам)


//основной цикл
{
      
      // вложенный цикл
        {
        // xml запрос
        }
   
    print $data;

}


понимаю, что нужно выполнять этот xml запрос на стр index?get=val, но не могу сообразить как сделать, подскажите как правильно. спасибо.

  Ответить  
 
 автор: cheops   (25.10.2011 в 13:19)   письмо автору
 
   для: *m*   (25.10.2011 в 12:30)
 

>есть еще один цикл, в котором делается xml запрос,
>он перестает работать когда появляется get параметр. (то есть при переходе по страницам)
Речь идет о каком-то включаемом файле? Если да, то как вы его включаете, подключаете? Приведите, если не сложно, строку с проблемным вызовом.

  Ответить  
 
 автор: *m*   (25.10.2011 в 13:55)   письмо автору
 
   для: cheops   (25.10.2011 в 13:19)
 

нет, я тут просто собираю xml запрос


$requestData = new DOMDocument('1.0', 'UTF-8');
...
$requestData = $requestInfo->saveXML();
$responseInfo = $TransactionHander->executeRequest( $requestURL, $requestData );


и отправляю его curl'ом, при первичной загрузке страницы Index, данные приходят, а при перходе по страницам, например index.php?page=1 - уже нет..



Мне единственное что в голову приходит, так это:

if(isset($_GET['page'])){

   $connect = curl_init("http://domen.ru/index.php");
   curl_setopt($connect , CURLOPT_POST, 1);
   curl_setopt($connect , CURLOPT_POSTFIELDS, $array);
   curl_exec($connect);
   curl_close($connect);

}

но не могу даже протестировать, сервер тут же виснет..


Сейчас попробовал в форме в файле обработчике указать, переменную page,

action="index.php?page=1"

- при первой загрузке срабатывает, а при дальнейших переходах - нет, т.е так index.php?page=2 и в последствии так - index.php?page=1 уже нет. Выходит дело не в этом? все, чето я совсем запутался теперь..

  Ответить  
 
 автор: *m*   (25.10.2011 в 15:27)   письмо автору
 
   для: *m*   (25.10.2011 в 13:55)
 

подскажите, где искать проблему, пожалуйста.

  Ответить  
 
 автор: cheops   (25.10.2011 в 15:29)   письмо автору
 
   для: *m*   (25.10.2011 в 13:55)
 

Не очень понятно, у вас же вроде GET-запрос? Зачем же тогда параметры передавать через POST. Почему бы просто не заменить http://domen.ru/index.php на http://domen.ru/index.php?page=2?

  Ответить  
 
 автор: *m*   (25.10.2011 в 15:41)   письмо автору
 
   для: cheops   (25.10.2011 в 15:29)
 

да надо было сразу объяснить, у меня форма поиска, находиться в файле search из нее данные летят в файл index, методом post, а внутри страницы, index, get появляется уже при переходе по страницам, навигации.

  Ответить  
 
 автор: cheops   (25.10.2011 в 15:46)   письмо автору
 
   для: *m*   (25.10.2011 в 15:41)
 

А нельзя форму поиска переделать на GET? Ведь получается, что пользователь не имеет возможность сослаться на результаты поиска? Да и у вас возникают сложности с этим...

  Ответить  
 
 автор: *m*   (25.10.2011 в 16:11)   письмо автору
 
   для: cheops   (25.10.2011 в 15:46)
 

да тут получается, что без разницы, потому что запрос собирается каждый раз заново при изменении параметров поиска. счас опишу более, детально:

есть сервис, который предоставляет, информацию в виде xml.
xml запрос -> xml ответ

что происходит в файле index:

данные из формы попали в index ->
собираю первый запрос, на основе данных из формы ->
отправляю его посредством curl и получаю ответ ->
из этого ответа получаю массив узлов, делю его и вывожу постранично.

и вот в этом цикле, где я вывожу, информацию по первому запросу, для каждого
из элементов, делается еще один запрос, на получение детальной информации.
и этот запрос, срабатывает только первый раз, когда данные прилетают из формы.

если я перехожу по какой либо странице, выводиться информация из первого запроса, а из второго нет, я проверял, возвращается пустой массив.

причем данные для второго запроса, беруться из ответа на ппервый запрос, и они исправно, получаются, я их тестово вывожу, а вот запрос, сам, второй не выполняется...

  Ответить  
 
 автор: elenaki   (25.10.2011 в 19:24)   письмо автору
 
   для: *m*   (25.10.2011 в 16:11)
 

надо данные формы передавать ГЕТом (цеплять их после page=1), тогда они не потеряются при листании.

  Ответить  
 
 автор: *m*   (26.10.2011 в 12:35)   письмо автору
 
   для: elenaki   (25.10.2011 в 19:24)
 

блин все правильно вы говорите, и cheops, я тупанул ужасно, дело в том, что я подключил готовый xml ответ, на первый запрос и забыл об этом напроч)) а второй запрос выполнялся, динамически, и поэтому я не понимал, как же так выполняется тогда первый запрос, если данные теряются..

а как это можно организовать, с помощью механизма сессий? ну то есть, чтобы переданные пост данные хранились в сессионных переменных, а вслучае, если меняется страница, index?page=val, стартовала сессия и переменные работали на этой странице?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования