перенаправить GET-данные на другой сайт с помощью PHP

0

Поэтому у меня есть форма на лицевой стороне. Я использую jQuery для сбора и отправки данных на collect.php.

Я хочу, чтобы collect.php отправил на другой сайт в следующем формате : fname = tom & phone = 3434343.

Как просто отправить данные, отправленные на collect.php на этот другой сайт?

Теги:

4 ответа

5

Поскольку вы уже собрали данные и отправили их на collect.php, вам, вероятно, придется сделать что-то вроде этого:

$query = http_build_query( $_GET );

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/something.php?" . $query);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);

Это позволит отправлять данные на другой сайт из вашего PHP-скрипта.

Если вам также необходимо curl_setopt() строку пользовательского агента или указать (как в подделке браузера), вы должны посмотреть на параметры, предоставляемые curl_setopt().

Альтернативным решением будет использование сокетов, но вам потребуется изучить сам HTTP-протокол.

  • 2
    ... Интересно, почему я получил отрицательный голос? Не хватает jQuery?
  • 0
    Это правильный ответ, так как он определенно заявляет, что хочет переслать запрос из collect.php на другой веб-сайт. Ответы, которые просто перенаправляют форму с помощью jquery или html, вообще не помогают.
Показать ещё 2 комментария
0

Если вы хотите отправить его невидимым способом через PHP, вы можете использовать расширение CURL (обычно уже интегрированное), здесь есть учебник: http://www.binarytides.com/php-curl-tutorial-beginners

0

используйте метод get для генерации строки запроса, то есть ?fname=tom&phone=3434343.

Установите action на URL-адрес сайта, на который вы хотите получить форму.

<form action="URL" method="get">
    <input type="text" name="q" value="">
    <input type="submit" value="search">
</form>

Рекомендации

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form

https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Forms/Sending_and_retrieving_form_data

также читайте http://api.jquery.com/serialize/

Обновить

Как? Формирование сообщения в нескольких местах

Лучшим способом для этого было бы сначала отправить форму на ваш локальный скрипт, а затем использовать CURL для отправки (отфильтрованных) данных, полученных на удаленный скрипт. Тогда просто понаблюдайте за ответом.

Затем просто отправьте электронное письмо и обработайте ответ с удаленного сценария в локальном.

-2

Я понимаю ваш вопрос, как вы отправили данные в форме на свой файл collect.php, затем вы хотите снова отправить данные с collect.php на другую страницу, eg anotherpage.php. Исправьте меня, если это не то, что вы хотите сделать.

Если да, почему бы не использовать снова jquery в файле collect.php

$.get('anotherpage.php', { fname: 'tom', phone: '3434343' });

Надеюсь, поможет.....

  • 0
    Вы не перенаправляете на другую страницу с помощью $ .get
  • 0
    @ davidkonrad он не сказал, что вам нужно перенаправить на другую страницу, просто отправьте данные. Моя идея не должна быть отклонена, потому что я только отвечаю на то, что было задано \

Ещё вопросы

Сообщество Overcoder
Наверх
Меню