2012-01-11 8 views
0

eAccelerator、Xdebug、Suhosinを使用して、PHP 5.3.8およびZend Engine 2.3.0を実行しているローカルサーバーにかなり新しいApache/PHPをインストールしました。メジャーなポスト問題を除いてすべてが良いです。フォームが投稿として送信されるたびに、データは送信されません。

$ _SERVERでprint_rを実行しましたが、content_typeがapplication/x-www-form-urlencodedに正しく設定されており、content_lengthが適切に設定されていることがわかりました。また、print_r($ _ POST)提出前にフォームに入力された情報の長さによっても異なります。

var_dump($_POST); 

$data = file_get_contents('php://input'); 
var_dump($data); 

が、私は他の質問を通じて見つけることができるすべてのものを読んだ、私は、php.iniの設定の多様性をチェックしてのphpinfo()リストを見てきました:次のコードの全てが何も返さない言われていること

すべてのポスト関連の変数は適切に設定されているようで、少なくとも2つのテキスト入力ボックスを持つフォームを処理するのに十分な大きさ以上です...

ありがとうございました!

答えて

0

さらに情報がなければ、私はいくつかの非常に一般的な指示を与えることができます:

  1. は、フォーム要素がありactionmethod属性の値を確認するか、そうでなければ、あなたが期待するものをやっていることを確認してください。
  2. Webサーバーへの接続があること、およびアプリケーションのファイアウォールがハードウェアとソフトウェアの両方を含むPOST要求をフィルタリングしていないことを確認してください。
  3. リクエストがうまくローカルネットワークまたはコンピュータ上のwiresharkでそれを傍受することによって形成されていることを確認してください。 wiresharkと他のツールを使用して、要求の進行状況を追跡し、到着していることを確認します。
  4. サーバーにログオンし、ログを確認します。要求を受けていることを確認してください。そうでない場合は、ローカルのアプリケーションのファイアウォールや他のツール(mod_securityなど)が要求をインターセプトしているかどうかを確認してください。その場合は、サーバーの観点から、処理前と処理後の要求を確認します。ターゲットが手順1のactionの値と一致していることを確認してください。
  5. ランダムに推測するか、(または)システム管理者に問い合わせてください。
+0

ありがとうございます。私はかなり前にステップ5に移動しましたが、私はかなり明白なものを逃してしまったのではないかと心配しました。 POST情報なしで別のページに正しくリダイレ​​クトするフォームでテストしています。メソッドをpostからgetに変更すると、$ _GETまたは$ _REQUESTから情報を取得できます。私はちょうどwiresharkをダウンロードし、完全に形成されたPOSTリクエストをサーバーに見ることができます。私はいくつかの余分なツールがインストールされていると思います。あなたのお返事ありがとうございます! –

関連する問題