私が制御していない遠隔サーバーに POST データを送信するフォームがあります。
フォームは秘密鍵を送信する必要があり (ユーザー側では何の関係もないと私は信じています)、私はそれを隠しフィールドに入れることに自信がありません。
POST データを自分のサーバーの PHP スクリプトに送信する方法はありますか?それにより、不足しているキーが追加され、POST データが遠隔地のサーバーに再送信されますか?
HTML から POST アクションを PHP ページの 1 つに設定し、その PHP ページから、HTML フォームから与えられた POST データに加えて秘密鍵を追加することにより、別のサーバーへの cURL 要求を実行できます。
form.html
<form name="form1" id="form1" method="POST" action="repost_data.php">
<input type="text" name="field1" value="" />
<input type="text" name="field2" value="" />
...
...
</form>
repost_data.php
<?php
$postArr = $_POST;
$postArr['private_key'] = 'private-key';
$ch = curl_init("http://another-server/posturl");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postArr);
curl_exec($ch);
?>
以下を試してください:
$_POST['keyname'] = $privatekey
これが役立つことを願っています。
cURL で実行できます ( http://php.net/manual/en/book.curl.phpを参照)。