Не работает форма с стороннего сервера.

В сниппете пытаюсь загрузить страницу по ссылке.
$page = file_get_contents('http://www.webclient.touradmin.ru/b/main/54002/find_tour/search');
if(!($page === false)  && strlen($page) > 0) {
  $page = iconv("windows-1251", "utf-8", $page);
  echo $page;
}
После вывода, форма не работает, получает не все данные. По идее, форма должна отсылать ajax-запросы на внешний сервер, но в network-панели инструментов разработчика в chrom я не вижу отправку запросов. Если просто на сервере запустить обычный php-файл с тем же кодом, форма работает отлично.

modx блокирует запросы на сторонний сервер?
Николай Филимонов
04 апреля 2014, 09:17
modx.pro
1
1 406
0

Комментарии: 7

Василий Наумкин
04 апреля 2014, 13:35
0
Почитай про отправку ajax запросов на сторонний сервер.

Кроссдоменный ajax.
    Николай Филимонов
    04 апреля 2014, 13:42
    0
    Если я правильно понял, нужно добавить хедер.
    header('Access-Control-Allow-Origin: *');
    Не помогло =(
    Но вопрос, почему форма (ajax) работает, когда я её вызываю из статичного .php файла?
      Василий Наумкин
      04 апреля 2014, 13:45
      0
      Ну так сравни построчно, что получается при выводе формы после загрузки с удаленного сервера.

      Чудес не бывает: если одна форма работает, а другая нет — значит, они разные.
        Николай Филимонов
        04 апреля 2014, 13:56
        0
        isida.dssnc.ru — это главная страница; форма ниже слайдера.

        isida.dssnc.ru/test.php — форма, подгружаемая из статичного php-файла.


        Код сниппета и test.php идентичный. Данные обе страницы получают почему-то разные. Различия в js переменных, я предположил, что форма на главной странице сайта не отправляет последующий ajax — запросы данных стороннему серверу. А на test.php форма несколько раз обновляется, и приобретает вид как на скрине. В панели разработчика видно, как форма шлёт запросы. На главной странице этих запросов нет.

        Может я что-то не так делаю?
          Николай Филимонов
          04 апреля 2014, 18:52
          0
          Как то странно получается. Статичный файл получает js массив filters=[/* Много-много элементов*/], modx же почему-то не получает параметров, в итоге принимает код filters=; из-за чего весь js падает и форма не работает.
          Это получает сниппет isida.dssnc.ru/snippet.html

          А это статичный файл isida.dssnc.ru/test.php

          Почему по одной ссылке передаются разные параметры? Или они как-то не до конца передаются? Как такое может быть?
            Наумов Алексей
            05 апреля 2014, 19:56
            0
            Две скобки — служебные символы modx, он их парсить пытается. Я в таком случае их пробелом разделяю. [ [ вместо [[.
              Николай Филимонов
              05 апреля 2014, 20:06
              0
              Ты даже не представляешь, насколько я тебе благодарен! Большое спасибо!
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      7