lHTML CGI フォーム '99. 2.11
l.お知らせ 内容 LINK FILE   HTML Win PC Unix MS-DOS C C++ Mfc Java 
.全般_ .文字 _配置   _リンク .フレ-ム  CGI .タグ一覧.
登録_ .音・画. .スタイル .--. .ActiveX.  ---  .名前. _一覧
 CGI  仕組   フォ-ム  具体例  仕組    カウンタ  *  
表示する   デ-タを処理する   送られるデ-タを見る   メ-ルデコ-ダ   IE4.0 のアクション

T フォームを表示する
ソースファイルに FORM タグが書いてあると、WWWブラウザはフォームを表示します。

<FORM> <INPUT> </FORM>  文章を入力できるだけで、データの送信はできません。
 ←これは INPUT フォームの例です。他にも各種あります。

T フォームのデータを処理する
補助タグ ACTION で、フォームのデータを処理させるプログラムを指定できます。
次の場合はメールソフトを起動して、データをメールで送ります。

<FORM METHOD="post" ACTION="mailto:m.togashi@iwafune.ne.jp">
<INPUT NAME="ABC">
</FORM>
METHOD は、データの処理方法を指定します。
  post はデータをメールで送る指定です。
ACTION は、デーを処理するプログラムを指定します。
  mailto: は処理プログラムにメールソフトを指定します。
  mailto: の後には、メールの送り先アドレスを書きます。
  受信者名を併記する方法は[リンク]-[メ-ル]のペ-ジにあります。
NAME は、複数のデータがある場合に、区別するためのデータ名です。

NAME(データ名) の用例

<FORM METHOD="post" ACTION="mailto:m.togashi@iwafune.ne.jp">
<INPUT NAME="abc1">
<INPUT NAME="abc2">
<INPUT NAME="abc3">
</FORM>



T 送られる前の データを見る
このページでテストする場合は、まず[ファイル]メニューの [オフライン作業]を選択します。
次に、下記のフォームに文字列(アルファベットが良い) を書きます。
<FORM METHOD="post" ACTION="mailto:m.togashi@iwafune.ne.jp">
<INPUT NAME="ABC">
</FORM>
文字列を入力したら、Enter キーを押します。
メールアドレスが他人に知られるという、警告メッセージが表示されます。
この場合は心配ありませんから、[OK] をクリックして継続します。
送信が失敗して、メールが残ります。( 送っても、[送信済フォルダ]に残ります。)
オンライン作業のときは、メールソフトがダイアルを始めたら [キャンセル]します。

データを見るには
1.[送信フォルダ]に残っているメールを右クリックします。
  →ポップアップメニューが現れます。
2.[プロパティ]を選択します。
  →ダイアログボックスが現れます。
3.ダイアログの、[詳細]タブの [メッセージのソース]ボタンをクリックします。
  →メッセージのソースダイアログが現れます。
  メッセージソースの最後に、フォームで入力したデータが書かれています。

フォームに BBB と入力した場合は、データ名を ABC としましたから、
 ・・・送受信者や言語形式など・・・
  ABC=BBB 
のようになっています。
複数のデータがある場合は、各データは ? で区切られています。
  abc1=BBB?abc2=CCC?abc3=DDD  

平仮名や漢字などは、文字コードを表わす数字の列になっているので、 そのままでは読むことができません。

メールを開くと、
フォームのデータは添付ファイルに別れています。
これだけを見るには、添付ファイルを右クリックして、[クイックビュー]に送ります。
上記で BBB と入力した場合は、データ名を ABC としましたから、
  ABC=BBB 
のように表示されます。
複数のデータがある場合は、各データは ? で区切られています。
※ ファイルに保存すれば、メモ帳でも見れます。

平仮名や漢字などは、%+文字コードを表わす数字の列になっているので、 そのままでは読むことができません。

T メールデコーダ
フォームの複数のデータは ? で区切られるだけで、つながっています。
また、日本語文字は 文字コードで表わされるのでそのままでは読めません。
( 半角カナを入力された場合の対処だと思います。)
暗号?のようなデータを、普通の文字にデコード(復元) してくれるソフトがメールデコーダです。

プロバイダによっては、メールデコーダを用意されている場合があります。
その場合は、メールソフトを起動する代りに、メールデコーダを起動します。

<FORM METHOD="post" ACTION="/cgi-bin/usermail">
<INPUT NAME="ABC">
</FORM>
/cgi-bin/usermail は、SANNET のメールデコーダの例です。
メールデコーダは、暗号?のようなデータを、普通の文字に直してから、メールにして送ってくれます。

メールデコーダでは、特別なデータ名が予約されている場合があります。
SANNET の場合は、
 next-url : データに書かれたページを表示します。
 subject : そのデータを、メールの題名に使います。

フォームのデータをどのように処理するのかは、処理プログラムによります。
もし自分でサーバーを所有しているなら、メールにして送る必要はありませんから、 直接統計データを作成する などもできます。
ただし、処理プログラムを作ることができれば。

デコードされた例 このようなメールを受け取ることができます。
[フォ-ム] のページで、何も入力せずに [送信]ボタンをクリックしたときの例です。
これは、iwafune.ne.jp から送信した(クリックした) 場合の例です。
==============================================================
TERMINAL INFOMATION
==============================================================
REMOTE_HOST : ppp103.iwafune.ne.jp
REMOTE_ADDR : 210.154.138.103
HTTP_USER_AGENT: Mozilla/4.0 (compatible; MSIE 4.01; Windows 95)
==============================================================

--------------------------------------------------------------
form-1: 姓名
form-12: defghijkl
form-2:
form-22: ***
form-3: ご意見をどうぞ
form-5: バナナ
form-51: りんご
form-6: R (VALUE= が無いときは on)
form-7: リ ( 〃 )
form-8: フォームのデータ(1)
SANNET のメールデコーダは、radioボタンと checkbox は1個だけのようです。
radioボタン等には、VALUE="0" のような値を付けて置けば、値が選択されます。


T 自分のパソコンで指定できるアクション ( IE4.0 )
IE4.0 はサーバーではないので、プログラムは直接起動できません。
自分のファイルでも、必ず警告メッセージが表示されます。
その代わりに、テキストファイルなどのデータファイルは直接開く事ができます。

<FORM ACTION="abc.htm">
<INPUT>
</FORM>
自分のパソコンに abc.htm がなければ、何も表示されないだけです。
インターネット上のファイルを指定すると、警告メッセージが表示されます。
 例 ACTION="http://www.page.sannet ・・・


T

  mtoga@sannet.ne.jp   登録日 '96. 6.15
URL : http://www.page.sannet.ne.jp/mtoga/index.html