[Up] [Next] [Previous]

GETとPOST

フォーム形式を使用することによって、ブラウザからサーバに向けてデータを 送る事ができます。データ送るにはGETPOSTの二通りの方法 (HTTPメソッド)が用意されており、<FORM>タグの METHOD属性によって指定されます。

GETはフォームデータがパッケージ化され、CGIスクリプトに引数を付けた場合 と同じような形式でデータがACTION属性で指定されたURLの最後に付 けられます。前の例において、ACTION属性が次のようになっていれば、

ACTION="/cgi-bin/myscript"
二つのyournamepasswordの二つの<INPUT>入 力タグがあるので、

http://www.foo.co.jp/cgi-bin/myscript?yourname=yamada&password=holmes

のようになります。これは、CGIスクリプトに引数を渡す場合と全く同じ形式 であることがわかります。

サーバはフォームから受け取った URLの疑問符より後のデータを環境変数QUERY_STRINGにセットします。 すなわち、前の例ではQUERY_STRING変数には次に値がセットされま す。

QUERY_STRING = yourname=yamada&password=holmes
POSTは、ほとんどGETと同じですが、ヘッダとデータ部が分割されているため、 データを加工してセキュリティを保つことができると言われています。ただし、 POSTの場合、QUERY_STRING環境変数はセットされません。

GETとPOSTのどちらを使うのがよいかは、個々で判断してください。GETは QUERY_STRINGが使えるので、データの分解が楽ですが、GETは後ろに 付けられるデータ長にも制限があるので、大きなデータを送る場合にはPOSTを 用いなければなりません。


[Up] [Next] [Previous]