PHP が突然、不明な理由で POST URL エンコードされたデータを取得できなくなりました 非常に奇妙な問題が発生しました: XP Pro+SP3 システム。 昨日、プログラムは正常に動作していましたが、Apache を再起動したところ、PHP は POST の URL エンコードされたデータを取得できませんでしたが、GET と POST の multipart/form-data は両方とも正常に取得できました。 つまり、 の場合、var_dump($_POST) は array(0){};の場合、$_POSTに値が入ります。 Google Firefox IE6、従来のフォーム送信、または Ajax のいずれであっても、ブラウザーが POST データを送信したことを確認してください。 この問題は一部のページで発生するだけでなく、すべての php が動作しなくなり、phpMyAdmin でさえログインできなくなります。 今日、php5.2.17の再インストールとapache2.2.22.0の再インストールを試みましたが、どちらも問題は解決しませんでした。 仕方なく IIS5.1 + PHP5.2.17 isapi で再度テストしてみたところ、今度はうまくいったのですが、IIS に切り替えることができませんでした… 思い出しました。昨日 Apache を再起動した後に発生した問題 以前、php で go-pear.bat を一度実行し、最初のインターフェイスで十字をクリックして閉じたようですが、他の php.ini を変更した可能性もあります。 しかし、最終的には元のphpをインストールし、apacheを再インストールしました。それともオペレーティング システムに何かおかしなことが起こっているのでしょうか? この種の問題に遭遇したヒーローはいますか?システムを再インストールしたくありません...------解決策-----まず enctype='application/x-www-form-urlencoded' の結果を見てみましょう? ------解決策------------------ $_QUERST を使用して値を受信し、投稿から値を受信できるかどうかを確認できます。$_POST が値を受信できない場合は、設定に問題があり、パラメータの変更が原因である可能性があります。 php.ini!このパラメータ register_global を変更してみてください ------解決策--------- 話し合う enctype が指定されていない場合、デフォルトは「Content-Type:application/x-www-form-urlencoded」です。