PHP で POST リクエストと GET リクエストを同時に使用する
PHP では、単一の HTTP で GET リクエストと POST リクエストを同時に送信することはできませんリクエスト。ただし、同様の効果を達成できる回避策があります。
メソッドの連鎖
1 つの解決策は、フォームのアクション属性でメソッドを連鎖させることです:
<form name="y" method="post" action="y.php?foo=bar">
この場合、PHP は $_POST['foo'] と $_GET['foo'] の両方にvalue "bar".
重要な違い
フォーム送信では 1 つの HTTP リクエストのみが開始されることを理解することが重要です。 GET パラメータは追加の POST リクエストとして送信されるのではなく、URL に追加されます。
使用例
特定のシナリオでは、この手法を使用してユーザーが GET リクエストから入力した年と同時に、POST でチェックされたチェックボックスに基づいてデータベースにアクセスします。 request:
if (isset($_POST['general']) && $_POST['general'] == 'YEAR') { $year = $_GET["year"]; // Access the database and perform the necessary actions }
結論
GET リクエストと POST リクエストを同時に使用することは、メソッド チェーンによって実現できます。ただし、これは依然として単一の HTTP リクエストであり、GET パラメータは別のリクエストとして送信されるのではなく、URL に追加されることに注意することが重要です。
以上がPHP で GET リクエストと POST リクエストを同時に送信できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。