PHP - Перенаправьте и отправьте данные по почте

У меня есть шлюз онлайн, который требует, чтобы HTML-форма была отправлена со скрытыми полями. Я должен сделать это с помощью Сценария PHP без любых HTML-форм (у меня есть данные для скрытых полей в DB),

Чтобы сделать эти данные отправки через, ДОБЕРИТЕСЬ:

header('Location: http://www.provider.com/process.jsp?id=12345&name=John');

И сделать эти данные отправки по почте?

47
задан pnuts 11 September 2015 в 08:33
поделиться

5 ответов

Вы не можете сделать это с помощью PHP.

Как говорили другие, вы можете использовать cURL - но тогда PHP-код становится клиентом, а не браузером.

Если вы должны использовать POST, то единственным способом сделать это будет создание заполненной формы с помощью PHP и использование хука window.onload для вызова javascript для отправки формы.

C.

42
ответ дан 26 November 2019 в 19:32
поделиться

Вы должны открыть сокет к сайту с помощью fsockopen и имитировать HTTP-Post-Request. Google покажет вам много фрагментов, как имитировать запрос.

1
ответ дан 26 November 2019 в 19:32
поделиться

Боюсь, что для этой задачи вам понадобится CURL. Хороший простой способ сделать это здесь: http://davidwalsh.name/execute-http-post-php-curl

Hope that helps

1
ответ дан 26 November 2019 в 19:32
поделиться

Для этого потребуется расширение cURL PHP.

$ch = curl_init('http://www.provider.com/process.jsp');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "id=12345&name=John");
curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1);  // RETURN THE CONTENTS OF THE CALL
$resp = curl_exec($ch);
5
ответ дан 26 November 2019 в 19:32
поделиться

Используйте для этого curl. Google по запросу "curl php post", и вы найдете это: http://www.askapache.com/htaccess/sending-post-form-data-with-php-curl.html .

Обратите внимание, что вы также можете использовать массив для параметра CURLOPT_POSTFIELDS. Из документации php.net:

Полные данные для публикации в операции HTTP «POST». Чтобы опубликовать файл, добавьте к имени файла @ и используйте полный путь. Это может быть передано как строка с URL-кодом, например 'para1 = val1 & para2 = val2 & ...', или как массив с именем поля в качестве ключа и данными поля в качестве значения. Если значение является массивом, заголовок Content-Type будет установлен на multipart / form-data.

2
ответ дан 26 November 2019 в 19:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: