ホームページ >データベース >mysql チュートリアル >PHP の 1 つのフォームで GET メソッドと POST メソッドの両方を使用できますか?

PHP の 1 つのフォームで GET メソッドと POST メソッドの両方を使用できますか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-16 05:58:03386ブラウズ

Can I Use Both GET and POST Methods in a Single Form in PHP?

PHP でのデータの POST と GET の同時実行

問題:

ユーザーがサポートを求めています単一のフォーム内で GET メソッドと POST メソッドの両方を利用します。 GET はユーザーの入力を表示するために必要ですが、POST はその入力に基づいて MySQL データベースからデータを取得するために必要です。この組み合わせを試行すると、ユーザーは未定義のエラーに遭遇します。

回答:

HTTP リクエストの制約

HTTP リクエストには、単一の動詞 (POST、GET、PUT など)。したがって、GET メソッドと POST メソッドの両方を直接使用することはできません。

回避策: POST リクエストに GET パラメータを追加する

GET メソッドと POST メソッドの両方を直接使用することはできません。 、URL クエリ文字列を使用して POST リクエストに GET パラメータを追加できます:

<form name="y" method="post" action="y.php?foo=bar">

このアプローチでは、リクエストが経由で送信された場合でも、PHP は $_GET['foo'] 変数に自動的に値を設定します。 POST.

個別のフォーム送信

ただし、ユーザーの意図したアクションには、GET (年の入力) 用と GET (年の入力) 用の 2 つの別々のフォーム送信が含まれることに注意することが重要です。 POST (データベース アクセス)。

1 つのリクエスト内で 2 つのフォームを同時に送信することは不可能です。各フォームは個別に送信する必要があります。

  • 最初のフォーム (年の GET) は、ユーザーの年の入力を単に出力する別のスクリプトまたはアクションに送信できます。
  • 2 番目のフォーム (データベース アクセス用の POST) は、データベース クエリを実行して結果を表示するスクリプトに送信できます。

以上がPHP の 1 つのフォームで GET メソッドと POST メソッドの両方を使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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