ホームページ  >  記事  >  バックエンド開発  >  PHPでフォーム送信メソッドを設定する方法

PHPでフォーム送信メソッドを設定する方法

PHPz
PHPzオリジナル
2023-03-31 09:10:451384ブラウズ

Web Web サイトまたはアプリケーションを開発する場合、ユーザーが入力できるフォームを Web ページに追加する必要があることがよくあります。このフォーム データは通常、さらに処理するために処理可能な形式でサーバーに送信する必要があります。 PHP ではフォームの送信をさまざまな方法で処理できますが、この記事ではフォームの送信方法を設定する方法を紹介します。

フォームを送信するための GET メソッド

GET メソッドは、HTTP プロトコルのリクエスト メソッドであり、データをサーバーに送信するために URL の末尾にフォーム データを追加します。 。 GET を使用してフォームを送信すると、フォーム データが URL に表示されるため、パスワードなどの機密データの送信には適していません。 POST メソッドと比較して、GET メソッドによって送信されるデータの量も制限されています。

フォーム送信メソッドを GET に設定するには、以下に示すように、method="get" 属性をフォーム タグに追加する必要があります。上記のコードでは、

action

属性でフォーム送信のターゲット URL を指定し、method 属性でフォーム送信方法を指定します。ユーザーが「送信」ボタンをクリックすると、フォーム データが URL パラメータに変換され、action 属性で指定された URL に追加されます。例: <pre class="brush:php;toolbar:false">&lt;form action=&quot;process.php&quot; method=&quot;get&quot;&gt;   &lt;!-- 表单元素 --&gt;   &lt;input type=&quot;text&quot; name=&quot;username&quot;&gt;   &lt;input type=&quot;password&quot; name=&quot;password&quot;&gt;   &lt;input type=&quot;submit&quot; value=&quot;提交&quot;&gt; &lt;/form&gt;</pre>PHP では、次のように、

$_GET

スーパー グローバル配列を使用して、GET メソッドで送信されたフォーム データにアクセスできます。 <pre class="brush:php;toolbar:false">http://example.com/process.php?username=bob&amp;password=123456</pre>フォーム データに中国語またはその他の非 ASCII 文字が含まれている場合は、

urlencode()

関数は、これらの文字が正しく処理できるように、URL を URL エンコードします。 フォームを送信するための POST メソッド

POST メソッドは、HTTP プロトコルのもう 1 つのリクエスト メソッドです。GET メソッドと比較して、POST メソッドにはデータ サイズの制限がなく、より多くのデータを送信できます。 POST を使用してフォームを送信すると、フォーム データは URL パラメータとしてではなく、HTTP メッセージ本文としてサーバーに送信されます。したがって、POST メソッドは、パスワードやクレジット カード番号などの機密データを送信するのにより適しています。

フォーム送信方法を POST に設定するには、以下に示すように、

method="post"

属性をフォーム タグに追加する必要があります。上記のコードでは、action 属性でフォーム送信のターゲット URL を指定し、

method

属性でフォーム送信方法を指定します。ユーザーが [送信] ボタンをクリックすると、フォーム データが HTTP メッセージ本文にカプセル化され、action 属性で指定された URL に送信されます。 PHP では、次に示すように、$_POST スーパー グローバル配列を使用して、POST モードで送信されたフォーム データにアクセスできます。 <pre class="brush:php;toolbar:false">$username = $_GET['username']; $password = $_GET['password'];</pre>フォーム データに中国語またはその他の非 ASCII が含まれている場合PHP スクリプトの先頭で次のコードを使用して文字セットを設定できます: <pre class="brush:php;toolbar:false">&lt;form action=&quot;process.php&quot; method=&quot;post&quot;&gt;   &lt;!-- 表单元素 --&gt;   &lt;input type=&quot;text&quot; name=&quot;username&quot;&gt;   &lt;input type=&quot;password&quot; name=&quot;password&quot;&gt;   &lt;input type=&quot;submit&quot; value=&quot;提交&quot;&gt; &lt;/form&gt;</pre>$_REQUEST 配列を使用します

$_GET

の使用に加えて、または

$_POST

スーパー グローバル配列に加えて、PHP はフォーム データにアクセスするための $_REQUEST という名前のスーパー グローバル配列も提供します。 $_REQUEST配列には GET、POST、COOKIE データのコレクションが含まれています。これは特定の送信メソッドの配列ではなく、複数の送信メソッドに同時にアクセスできるフォーム データです。 この配列の使用法は、次に示すように、$_GET および

$_POST

と似ています。 <pre class="brush:php;toolbar:false">$username = $_POST['username']; $password = $_POST['password'];</pre># を使用することに注意してください。 # #$_REQUEST配列を使用する場合は、セキュリティ上の問題が発生する可能性があるため、十分に注意する必要があります。

概要

PHP では、GET メソッド、POST メソッド、$_REQUEST

配列など、さまざまな方法を使用してフォームの送信を処理します。 GET メソッドは送信するデータが少ない場合に適しており、POST メソッドは大量のデータや機密データを送信する場合に適しています。

$_REQUEST

配列を使用して、複数の送信方法から同時にフォーム データにアクセスします。開発者は、アプリケーションの通常の動作とデータのセキュリティを確保するために、特定のアプリケーション シナリオとデータ要件に基づいて適切なフォーム送信方法を選択する必要があります。

以上がPHPでフォーム送信メソッドを設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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