ホームページ >バックエンド開発 >PHPの問題 >phpがフォームデータを取得できない場合はどうすればよいですか?

phpがフォームデータを取得できない場合はどうすればよいですか?

藏色散人
藏色散人オリジナル
2021-09-16 09:39:112995ブラウズ

php がフォーム データを取得できない問題の解決策: 1. php.ini 設定ファイルを見つけて、「enable_post_data_reading」の前のセミコロンを削除します; 2. Apache サーバーの作業ディレクトリにプロジェクトを作成します; 3 . PhpStorm 内からブラウザ デバッガーを開きます。

phpがフォームデータを取得できない場合はどうすればよいですか?

#この記事の動作環境: Windows 7 システム、phpstorm 2020 バージョン、Dell G3 コンピューター

php は使用できませんフォームデータを取得するにはどうすればよいですか? php フォーム送信時に投稿データが取得できない問題の解決策

ブロガーは php 環境を実行しています: windows phpstorm xampp

php を学ぶ初心者は、echo $_POST を使用してください["variable"] および var_dump ($_POST) はポストデータを取得できません。

解決策は次のとおりです:

1. php.ini 設定ファイルを見つけて、enable_post_data_reading 変数を探し、それが開いていることを確認して、セミコロンを削除します。ステートメントの前 (セミコロンのあるステートメントはコメントステートメントです):


2. php を実行しているブラウザのアドレスを観察すると、次のことがわかります。 PhpStorm でブラウザを開くと、サービス ポート番号は 63342 (URL は localhost:63342/ の形式です)

つまり、問題の理由は次のとおりです。PhpStorm はデフォルトで独自の内部サーバーを使用しますが、 xamppではApacheサーバーを使用しません。組み込みサーバー phpStorm はポート 63342 を使用しており、サーバー内で問題が発生して POST メソッドが異常になり、Apache サーバーの作業ディレクトリにプロジェクトを配置し、アドレス バーに localhost と入力すると、現時点では Apache サーバーが使用されており、デフォルトのポート番号は 80 であり、Apache サーバーはプログラムを正常に実行できます。

PhpStorm の内部サーバーに問題があるため、解決策は内部サーバーを使用しない方法を見つけることです。次の 2 つの方法があります。

1. Apache サーバーの作業ディレクトリにプロジェクトを作成し、実行するたびにブラウザのアドレス バーにローカルホスト アドレスを直接入力します。 PhpStorm からブラウザでプログラムをデバッグするには、以下の設定を変更することで実現できます。

(1) まず、Apache サーバーのディレクトリをローカル ディレクトリにマッピングします。

方法は次のとおりです。 #1. /xampp/apache/conf/httpd.conf ファイルを見つけます

2. コード ブロックを見つけます

3. 次のコードを の子:

# /phpworkspace/ : 其它磁盘上目录的别名, 就是你想映射过来的目录的别名
# "E:/phpworkspace/" : 这个是目录的绝对路径
Alias /phpworkspace/ "E:/phpworkspace/"
# 现在就可以通过 //localhost/phpworkspace/ 访问到 E盘下phpworkspace文件夹里的项目了
4.次のように、 と同じレベルにコードを追加します:

<Directory "E:/phpworkspace/">
    AllowOverride All
    Options Indexes FollowSymLinks Includes ExecCGI
    Require all granted
</Directory>

完了。 Apache を再起動して、http://localhost/phpworkspace/ にアクセスします。これで問題ありません。

(2) 次に、PhpStorm で、[ファイル] -> [設定] -> [ビルド、実行、デプロイメント] -> [デプロイ] を見つけます。最初は空です。緑色のサーバーをクリックします。プラス記号を追加してローカル サーバーを追加し、localhost という名前を付けます。タイプ:


After で [In place] を選択します。作成が完了したら、右側の [接続] タブのデフォルト設定でサーバーがすでに設定されています。ポート 80、つまり http://localhost

の Apache サーバーとして構成します。ローカル プロジェクトにマップする作業ディレクトリに設定します:


Mappings タグの下のローカル パスは、ローカル プロジェクトのディレクトリに設定されます:


この時点で、PhpStorm からブラウザをクリックして、URL にフィールド 63342 ポートがなくなり、ローカルの Apache サーバーと、対応するフォーム データが使用されます。

推奨学習:「

PHP ビデオ チュートリアル

以上がphpがフォームデータを取得できない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。