<form action="xxx.php" method="post">
<input type="hidden" name="hoge" value="値" />
<input type="submit" value="送信" />
</form>
上記の記述がなされたHTMLページにて「送信」ボタンを押下すると、
・POSTとしてリクエストされる(hidden項目が取得できる)
・GETとしてリクエストされる(hidden項目は取得できない)
という2リクエストがxxx.phpへきます。
また、xxx.phpにてsleep関数を使うと
1.POSTのリクエストくる
2.sleep関数が実行される
3.sleep関数の終了(xxx.phpの処理終了)を待ってからGETのリクエストがくる
という動作になります。
なおxxx.phpはsleep以外に「表示完了」という文字列を表示させる処理のみです。
リクエストヘッダ等はメモっていませんので不明ですが(ただしGETのリクエストも普通のリクエストっぽい)、このケースについての解決策をご回答いただきたく思います。
■クライアントの環境
OS:Mac OS X v10.5.7
ブラウザ:FireFox 3.0.11
■サーバの環境
Windows XP SP3
Apache2
PHP 5.2.?
>GETのリクエストも普通のリクエストっぽい
とりあえず、リクエストを受ける側でPOSTでないものは無視することで回避されると思います。
>・GETとしてリクエストされる(hidden項目は取得できない)
この現象から見て、このフォームからのリクエストでないと思われます。
ほかにこのページにフォームとかボタンとかありませんか?
原因はFireFoxのアドオンである
YSlow2.0.0b
です。
Firebugと組み合わせた際、リクエストを2度投げます。
アドオンの無効化で正常な動作が確認出来たため、削除を行いました。
この度は誠にありがとうございました。