初級篇★ページ作りの基礎知識1. HTMLを書いてみよう

VOL7.送信フォームを作ってみよう その5.フォームを送信する

 

フォーム送信する方法には、以下の3つがあります。

1.<FORM>タグ内に書き込む

2.Javaスクリプトを使う

3.CGIを使う

このうちCGIを使う方法は、CGIの設置そのものがなかなか厄介なため、とりあえずここではそれ以外のやり方について説明しておきます。

T.<FORM>タグ内に書き込む

この方法は<FORM>タグ内に以下のように書き込めば良いだけですので、最も簡単です。

<FORM ACTION="mailto:送信先メールアドレス" METHOD="post" ENCTYPE="text/plain">

METHOD ... データの送信方法を指定する属性ですが、この場合は、"post"に限られます。

ENCTYPE ... データをテキスト形式で受信するには、"text/plain"を指定します。これを書き込まないと、データがエンコードされた状態で送られてきてしまいますので、そのままでは読むことが出来ず、デコード作業が必要になります。

これだけ書き込んでおけば、送信ボタンが押されるとIEでは以下のようなメッセージが出て、送信者のメールアカウントを使ってデータを送信してもらうことができます。

OKが押されると、送信されます。

 

U.Javaスクリプトを使う

Javaスクリブトに関しては後の章で解説しますが、Javaは一定の動作をする装置の役割をするものと割り切って考えると、スクリプトさえ正しく書き込んでおけば、難しいことを考えなくても機能します。フォームを送信させるためのJavaスクリプトは以下の通りです。<FORM...>タグ内に書き込むだけの方法と違うのは、送信ボタンが押された時に、任意のメッセージを表示させたり、送信側で複数の中から送信先を選んだり、データ形式や送信方法を選んだりしてもらえるように出来ることです。しかし、ここではとりあえずメッセージを出す方法のみ解説します。

 

1.Javaスクリプトを動作させる準備として、<FORM>タグ内に以下のように書き込みましょう。

<FORM NAME="questions" onSubmit="send_mail()">

NAME ... フォームに任意の名前を付けます。「onSubmit="send_mail()"」は、Javaを動作させるために必要ですので、このまま書き込んで下さい。

 

2.<HEAD>〜</HEAD> の後に、以下のようにJavaスクリプトを書き込みます。

</HEAD>

<SCRIPT language="JavaScript">
function send_mail(){
document.questions.action = "mailto:abcde@aggressiveart.org";
document.questions.method = "post";
document.questions.encoding = "text/plain";
alert("Thank you for the message!!");
}
</SCRIPT>

 

ブルーの印を付けたところのみ書き換えが必要です。

mail to: ... 送信先メールアドレスを記入

document. ... <FORM>内に書き込んだフォーム名を記入

alert(" ... 送信ボタンが押された時に表示するメッセージを記入

 

これで設定は完了しました。送信ボタンが押されると、以下のようにメッセージを出して、続く確認メッセージにOKが押されると送信します。

 

なお、どちらの場合もメールソフトやブラウザの種類、設定によって機能しない場合もあります。それについては出来ればフォームページ内で説明しておき、送信出来ない時は通常のメールとして送ってもらえるよう、送信先メールアドレスを書き添えておくのが良いでしょう。

 

初級篇1.VOL7.送信フォームを作ってみよう・その4 <<

>> 初級篇1.VOL8.イメージマップの設定と設置

 

 

2002.7.7.-7.16.

2006.7.24.改稿