[PHP-users 30894] Re: PHP からPOSTして別ページへ飛ぶ方法を探しています
atsushi kojo
a-kojo @ artsnet.jp
2006年 12月 6日 (水) 12:40:59 JST
お世話になります。古城です。
やりたいことは
・ユーザーにアクションを求めないでデータをPOST
・アドレスはPOST送信ファイルのままPOST受信側のデータを表示したい
ですかね?
上記でよければ私は以前PEARのHTTP_Requestで実現したことがあります。
[POSTする側]
<?php
require_once "HTTP/Request.php";
$req =& new HTTP_Request("hogehoge.php"); ←送るファイルとメソッドの指定
$req->setMethod(HTTP_REQUEST_METHOD_POST);
$req->addPostData("Foo1", "bar1"); ←送りたいだけPOSTデータを入れる
$req->addPostData("Foo2", "bar2");
$req->addPostData("Foo3", "bar3");
if (!PEAR::isError($req->sendRequest())) { ←正常に処理されれば内容を受信
$response1 = $req->getResponseBody();
} else {
$response1 = "";
}
echo $response1; ←受信側の出力をそのまま表示
?>
[受信する側]
<?php
print_r($_POST); ←テストコードなんでセキュリティ一切考慮してません
?>
[結果]
Array ( [Foo1] => bar1 [Foo2] => bar2 [Foo3] => bar3 )
※アドレスはPOSTした側のアドレスのまま受信した側の画面を表示できます。
ただ単に$req =& new HTTP_Request("http://www.yahoo.co.jp/");とかすると
意味が解ると思います。
詳しくは
http://www.go-pear.org/manual/ja/package.http.http-request.intro.php
------------------
Atsushi Kojo
http://artsnet.jp/
------------------
PHP-users メーリングリストの案内