PHPでリダイレクトするときPOSTでデータを渡す方法を教えてください。なるべく既存の関数を使いたいです。よろしくお願いいたします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2003/11/30 20:32:53
  • 終了:--

回答(1件)

id:zerobase No.1

zerobase回答回数15ベストアンサー獲得回数02003/11/30 21:01:56

ポイント40pt

リダイレクトとはHTTPレスポンスのLocationヘッダを使った手段のことですよね?

POSTメソッドは使えないと思いますので、JavaScriptと中間ページを使います。

つまり、

1.リダイレクト元Sから

2.リダイレクト先DにリダイレクトしつつPOSTでフォームデータを送信

これが出来ませんから、以下のようにします。

1.リダイレクト元Sから

2.中間のページMにGETメソッドでリダイレクトし(JavaScriptで、ページのonLoadでフォームをsubmitするようなものを用意します。そのJavaScript(を含むHTML)はPHPで生成すればよいです。パラメータはリダイレクトするMのURLに?でくっつければよいです。それをhiddenのフォーム変数としてHTMLに出力します)

3.Mを読み込むとJavaScriptで自動的にSubmitさせることで、本来のリダイレクト先Dに飛ばす

とします。

URLはisize住宅情報のログイン画面です。情報を入力してボタンを押すと、

http://www.isize.com/am/cgi-bin/common/au/auto_login.cgi

ISIZE ID会員機能終了のお知らせ

というページが一瞬だけ表示され、自動的にPOSTでSUBMITして次の画面に移動します。そこで、一瞬だけ表示されているあいだに「ソースを表示」してみてください。上記の説明が、どういうことか分かると思います。

id:kunitz

情報ありがとうございます。

2003/11/30 21:54:33

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません