formタグのmethod属性の詳細説明

Y2J
Y2Jオリジナル
2017-05-20 10:23:263265ブラウズ

次の例では、フォーム データがメソッド属性を介して URL に追加されます:

<form action="form_action.asp" method="get">
  <p>First name: <input type="text" name="fname" /></p>
  <p>Last name: <input type="text" name="lname" /></p>
  <input type="submit" value="Submit" />
</form>

定義と使用法

メソッド属性は、フォーム データの送信方法を指定します (フォーム データは指定されたページに送信されます)アクション属性による)。

フォームデータは、URL変数 (method="get") または HTTP post (method="post") として送信できます。

method 属性

ブラウザは、method 属性で設定されたメソッドを使用して、フォーム内のデータを処理のためにサーバーに送信します。 POSTメソッドとGETメソッドの2つのメソッドがあります。

POSTメソッドを使用する場合、ブラウザは次の2つの手順に従ってデータを送信します。まず、ブラウザは、action 属性で指定されたフォーム処理サーバーとの接続を確立し、接続が確立されると、セグメント化された送信方法でデータをサーバーに送信します。

サーバー側では、POST スタイル アプリケーションの実行が開始されたら、フラグの場所からパラメータを読み取る必要があります。パラメータが読み取られたら、アプリケーションがこれらのフォーム値を使用する前に、これらのパラメータをデコードする必要があります。ユーザー固有のサーバーは、アプリケーションがこれらのパラメーターを受け入れる方法を明示的に指定します。

もう 1 つのシナリオは、GET メソッドを使用することです。この場合、ブラウザーはフォーム処理サーバーとの接続を確立し、1 回の転送ステップですべてのフォーム データを直接送信します。ブラウザーはフォームのアクション URL の直後にデータを追加します。 。 2 つを区切るには疑問符を使用します。

一般的なブラウザは上記のいずれかの方法でフォーム情報を送信できますが、一部のサーバーはいずれかの方法で提供されたデータのみを受け入れます。

タグのメソッド属性で、フォーム処理サーバーがデータを処理するために使用するメソッド (POST または GET) を指定できます。

投稿しますか?それとも入手しますか?

フォーム処理サーバーが POST メソッドと GET メソッドの両方をサポートしている場合、どちらのメソッドを選択する必要がありますか?この点に関するルールをいくつか示します。

最高のフォーム送信パフォーマンスを実現したい場合は、GET メソッドを使用して、短いフィールドがいくつかある小さなフォームを送信できます。

● 一部のサーバーオペレーティングシステムでは、アプリケーションにすぐに渡すことができるコマンドライン引数の数と長さが制限されており、この場合、多くのフィールドまたは非常に長いテキストフィールドを含むフォームの場合は、POSTメソッドを使用して送信する必要があります。

● サーバーサイドのフォーム処理アプリケーションの作成に慣れていない場合は、GET メソッドを選択する必要があります。 POST メソッドを使用する場合は、読み取りメソッドとデコード メソッドで追加の作業を行う必要があります。これは難しくないかもしれませんが、これらの問題に対処したくないかもしれません。

セキュリティが問題となる場合は、POST メソッドを使用することをお勧めします。 GET メソッドはフォーム パラメーターをアプリケーションの URL に直接配置するため、ネットワーク スヌーパーがフォーム パラメーターを簡単にキャプチャし、サーバーのログ ファイルから抽出できます。パラメータにクレジット カードの口座番号などの機密情報が含まれている場合、ユーザーのセキュリティが知らず知らずのうちに危険にさらされる可能性があります。一方、POST アプリケーションにはセキュリティ上の脆弱性がなく、別のトランザクションとして処理するためにパラメーターをサーバーに送信するときに少なくとも暗号化を使用できます。

● フォーム外のサーバーサイドアプリケーションを呼び出し、それにパラメータを渡す処理を含める場合は、GETメソッドを使用する必要があります。このメソッドを使用すると、フォームなどのパラメータをメソッドの一部として含めることができるからです。 URL。一方、POST スタイルを使用するアプリケーションは、従来の タグのコンテンツとして使用できないコンテンツを含む、URL の後にブラウザからの追加の転送を期待します。

パラメータを明示的に渡す

前面的一些建议也可以作为选择此种方式的一定解释。假设你有一个很简单的表单,其中只包含 x 和 y 这两个参数。在对这些元素的值进行编码时,它们的形式如下所示:

x=28&y=66

如果表单采用了 method=GET,那么用来引用服务器端应用程序的 URL 将如下所示:

http://www.example.com/example/program?x=28&y=66

在任何时候我们都可以创建一个传统的 标签,用它在调用带有所需参数值的表单,其形式如下所示:

唯一的问题是,分隔参数所用的 & 符号也是字符实体中的插入符号。如果在 标签的 href 属性中放入一个 & 符号,浏览器就会将其后面的字符替换成相应的字符实体。

为了防止出现这种情况,我们必须用它的实体对等物来替换 & 符号,也就是用 "&" 或 "&" 来替换。替换之后,上面的那个引用服务器应用程序的非表单示例将如下所示:

由于这样还是不能在 URL 中使用 & 符号,并且有可能在将来带来混乱,因此我们鼓励服务器设置最后也能够接受用分号作为参数分隔符。您也可以看看自己的服务器文档,了解服务器是否支持这种功能。

语法

<form target="value">

属性值

formタグのmethod属性の詳細説明

【相关推荐】

1. HTML免费视频教程

2. 带你掌握HTML中table和form表单

3. 详解html中form表单的参数和属性

4. 详解form标签中的method属性

5. 详解form表单的工作过程

以上がformタグのmethod属性の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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