@Httdientee

Помощь с POST запросом php?

Мне нужно чтобы человека вместе с этим post запросом отправило на данный url, как это сделать

$url = 'https://anypay.io/merchant';
    $params = array(
        'merchant_id' => $project_id,
        'pay_id' => $pay_id,
        'amount' => $amount,
        'currency' => $currency,
        'desc' => $desc,
        'sign' => $sign,
    );
    $result = file_get_contents($url, false, stream_context_create(array(
        'http' => array(
            'method'  => 'POST',
            'header'  => 'Content-type: application/x-www-form-urlencoded',
            'content' => http_build_query($params)
        )
    )));
  • Вопрос задан
  • 133 просмотра
Пригласить эксперта
Ответы на вопрос 3
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
1) тупо линк - нажмите сюда чтобы оплатить
2) яваскрипт, который аяксом отправляет данные на сервер, ваш сервер выполняет приведенный выше код и обратно отдает урл куда переходить, ну и дальше локэйшн.хреф или виндоу.опен.
Ответ написан
Комментировать
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
1. форма с автосабмитом
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body onload="document.getElementById('payment-form').submit();">
<form id="payment-form" action="https://anypay.io/merchant" method="post">
    <input type="hidden" name="merchant_id" value="<?=$project_id?>" />
    <input type="hidden" name="pay_id" value="<?=$pay_id?>" />
    <input type="hidden" name="amount" value="<?=$amount?>" />
    <input type="hidden" name="currency" value="<?=$currency?>" />
    <input type="hidden" name="desc" value="<?=$desc?>" />
    <input type="hidden" name="sign" value="<?=$sign?>" />
    <noscript>
        <input type="submit" value="Перейти к оплате" />
    </noscript>
</form>
</body>
</html>


2. Судя по доке https://anypay.io/doc/sci все параметры можно передать GET-ом, то есть подойдёт простой редирект
<?php
$params = array(
    'merchant_id' => $project_id,
    'pay_id' => $pay_id,
    'amount' => $amount,
    'currency' => $currency,
    'desc' => $desc,
    'sign' => $sign,
);
$url = "https://anypay.io/merchant?".http_build_query($params);

header("Location: {$url}");
exit;
Ответ написан
Комментировать
@rPman
Измени теги вопроса, так как у тебя сторона браузера, т.е. Javascript

Делать это с помощью ajax запроса или самостоятельно собирать с помощью xmlhttprequest
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы