やりたいこと
GETパラメータをPOSTパラメータに変更してリダイレクトしたい。
実現方法
JavaScriptでsubmitする。
jQueryだけでも実現可能だが取り方が面倒なのでPHPでやる。
ソースコード
get2post.php
<!DOCTYPE html>
<head>
<meta charset='utf-8'>
</head>
<html>
<body onload='document.redirectForm.submit();'>
<form name='redirectForm' method='post' action='<?= htmlspecialchars($_GET["rd_url"]) ?>'>
<input type='hidden' name='param1' value='<?= htmlspecialchars($_GET["param1"]) ?>' />
<input type='hidden' name='param2' value='<?= htmlspecialchars($_GET["param2"]) ?>' />
</form>
</body>
</html>
例えばここにPOSTしたい場合
http://example.com/destination
以下のようにURLエンコードしてrd_urlに渡してやる
http://example.com/get2post.php?rd_url=http%3a%2f%2fexample%2ecom%2fdestination¶m1=10¶m2=200