[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 メーリングリストの案内