php 投稿失敗の解決策: 1. コードを「action=''」に変更します; 2. 「var_dump($_POST);」ステートメントを実行します; 3. php.ini ファイルを変更します; 4. apacheだけを再起動します。
この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
こんな場合はどうすればよいですかPHP POST が失敗しますか?
具体的な問題の説明:
PHP POST が失敗しましたか?機能していませんか?
<?php echo $_POST['ss'];?> <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post"> <input name="ss" type="text" /> <input type="submit" name="submit"> </form>
このコードは、送信をクリックしたときにテキストボックス name="ss" に入力された内容を出力する必要があります。
しかし、印刷できません。 Method="get" を使用するが post を使用しない問題は何ですか。
回避策:
ページを更新するだけの場合は、
action=''
の代わりに次の操作を実行します:
action="<?php echo $_SERVER['PHP_SELF'];?>"
また、これを 2 行目に追加して、$_POST 配列に何が保存されているかを確認します。
var_dump( $_POST );
うーん...コミット時には空ですか?これを php ファイルの先頭に追加してみてください:
if(empty($_SERVER['CONTENT_TYPE'])) { $_SERVER['CONTENT_TYPE'] = "application/x-www-form-urlencoded"; }
さて、php.ini を確認してください (通常、/etc には sudo または root が必要です):
post_max_size = 8M variables_order = "EGPCS"
設定した内容を理解していますか?二つのルール?その場合、割り当てるメモリの量に注意してください。システムの仕様によっては、2048MB を超えると問題が発生する可能性があります。
注: php.ini ファイルに変更を加え、PHP が Apache モジュールとして実行されている場合は、Apache を再起動する必要があります。次のようなコンテンツ:
sudo /etc/init.d/httpd restart
推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHPのポストが失敗した場合の対処法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。