(PSN-send Ver 4.0)
PSN-send は、ホームページから入力されたデータをメールとして指定したメールアドレスへ送信することができます。
|
- 一般的なFORM文の記述方法
- 入力データ確認画面と入力データ登録完了画面
- 入力データ確認(登録完了)画面表示の変更
- 送信するメールの形式
- メールの件名をセットしたい場合
- 差出人メールアドレスをセットしたい場合
- 入力データのチェックを行う場合
- 一般的なFORM文の記述方法
(1) FORM文
FORM文は、入力フォームの先頭に記述し、起動するプログラムやメール送信先のメールアドレスを指定します。尚、メール送信先は、xxx@psn.ne.jpもしくは PSN のレンタルサーバで運用しているメールアドレスでなければなりません。PSN以外のサイトにメールを送信することはできません。
<FORM METHOD="POST" ACTION="/cgi-bin/PSN-send?mailto:メールアドレス">
(4) FORM文を閉じる
</FORM> を最後に記述して FORM文を閉じます。
(入力処理のテスト)
ここで、入力処理のテストを行うことができます。次の手順で実行してください。
(1) 上の入力枠内に適当にデータを入れてください。
(2) 上の[確認]ボタンをクリックしてください。
(3) 入力データ確認画面が表示されます。[Submit]ボタンをクリックします。
(4) 入力データ登録完了画面が表示されます。[Back]ボタンをクリックして戻ります。
(注意) 半角カナは入力しないでください。文字化けを起こします。
入力データ確認画面と入力データ登録完了画面
入力データ確認画面は次のようになります。
ここで、[Submit]ボタンをクリックすると"入力データ登録完了画面"が表示されます。
ここで、[Back]ボタンをクリックすると元の画面に戻ります。
入力データ確認(登録完了)画面表示の変更
[確認]ボタンがクリックされますと、通常は上図のような画面が表示されますが、この画面表示をユーザが部分的に変更することができます。ます。<FORM>と</FORM>の間に次のようなINPUT文を入れてください。
<!------- 漢字コードをUTF-8に統一 --------->
<INPUT TYPE="hidden" NAME="#!CHARSET" value="UTF-8">
<!------- 入力データ確認画面 --------->
<INPUT TYPE="hidden" NAME="#!TITLE"
value="<H2>入力データの確認画面</H2>">
<INPUT TYPE="hidden" NAME="#!SUBMIT" value=" 送信(Submit) ">
<INPUT TYPE="hidden" NAME="#!BACK" value=" 戻る(Back) ">
<!------- データ入力処理のHTMLファイル名 ------->
<INPUT TYPE="hidden" NAME="#!CONFIRMHTML"
value="/home/USERID/public_html/aaa.html">
<!------- データ登録完了HTMLファイル名 ------->
<INPUT TYPE="hidden" NAME="#!NEXTPAGE"
value="/home/USERID/public_html/aaa_next.html">
|
(注意) 上記 INPUT文のVALUE=".."の中はシングルクォート(') 使用不可です。
NAME | 内容 |
#!CHARSET | 入力データ確認画面、登録完了画面の漢字コードを指定します。
漢字コード:"UTF-8", "EUC-JP", "Shift_JIS"もしくは"SJIS" |
#!TITLE | 入力データ確認画面のタイトルを指定します。 |
#!SUBMIT | Submitボタン名を指定します。 |
#!BACK | Backボタン名を指定します。 |
#!CONFIRMHTML | 入力データ確認メッセージを元のページの中に挿入するときに指定します。元のページは絶対パスで指定します。
絶対パスの例: /home/USERID/public_html/aaa.html
元のページの挿入したい場所の最初と最後に <!--#!START--> と <!--#!END-->を指定します。
|
#!NEXTPAGE | 入力データ登録完了時に表示するページのファイル名を絶対パスもしくは PSN-send の場所からの相対パスで指定します。
絶対パスの例: /home/USERID/public_html/aaa_next.html
相対パスの例: ../../public_html/aaa_next.html
相対パスの例: ../htdocs/aaa_next.html
NEXTPAGEを指定すると、「データを登録しました。[Back]ボタンをクリックして画面を戻してください」のページがNEXTPAGEで指定されたページに切り替わります。
|
送信するメールの形式
|
#Date Time = 1996/04/20 18:00:23 <---- 日時は自動的に表示されます
#RemoteHost= xxx.xxx.xxx.xxx <---- クライアントのIPアドレス
氏名 = "PSインターネットサービス"
E-mail: = "info@psn.ne.jp"
Password = ""
Menu = "高級"
種別 = "レンタル"
種別 = "フレッツ"
誕生日 = "平成"
comment =
"テキストを入力します。"
""
|
送信するメールには「項目名=入力値」の形式で入力値が表示されています。尚、入力日時および入力者のコンピュータのIPアドレスが自動的に表示されます。
●メールの件名をセットしたい場合
通常、メールの件名は空もしくは( no subject)になります。この件名を変更するには、次の例のようにデータ項目名(name)に"FORM:"を指定し value句にメールの件名を指定します。
<INPUT TYPE="hidden" NAME="FORM:" value="メールの件名">
|
(注意) 上記 INPUT文のVALUE=".."の中はシングルクォート(') 使用不可です。
●差出人メールアドレスをセットしたい場合
初期状態では、メールの差出人は、nobody@xxx.psn.ne.jp になります。次の方法で差出人のメールアドレスを指定することができます。差出人にメールを返信する場合などに便利です。
入力データのデータ項目名(name)を "E-mail:"( E-mailに続けて半角のコロン)にします。
E-mail <INPUT TYPE="text" NAME="E-mail:" SIZE=48 MAXLENGTH=64>
|
(まとめ)
NAME | 内容 |
FORM: | メールの件名をセットします。 |
E-mail: もしくは Email: | データ登録者のメールアドレスを意味します。 |
入力データのチェックを行う場合
PSN-sendは、入力されたデータのチェックを行うことができます。入力データのチェックを行うには、1個の入力データに対して1個の「チェック用input文」を追加します。
例えば、"ユーザ名"の入力を行うにあたり、その"ユーザ名"は「入力必須」で「半角」でなければなない場合は次のようにします。
ユーザ名:<input type=text name="ユーザ名" size=10 maxlength=8>
<input type=hidden name="check:ユーザ名" value="not_null ascii">
|
(チェック用input文の使用方法)
(1) type
input文の typeは、hidden にしておきます。
(2) name
nameは、チェックしたい項目名の前に "check:"を付けます。
(3) value
valueは、次のチェック句を指定します。
チェック句 | 意味 |
not_null | 入力必須 |
mail_address もしくは mailaddress | メールアドレス形式 |
ascii | ASCII(半角)のみ |
alpha | 英字(半角)のみ |
number | 数字(半角)のみ |
date | 日付型(区切り文字は / . - の3種類)
(例: 2002/06/05, 2002.06.05 もしくは 2002-06-05) |
tel もしくは telno | 電話番号(区切り文字は - もしくは区切り無し)
(例: 06-6390-3205, 0663903205) |
url | URL(http, https, ftp のURLを指定可能)
(例: http://www.psn.ne.jp/, https://xxx.com/) |
cardno | クレジットカード番号(4桁ごとにスペース)
(例: 4980 2100 8765 1234) |
cardlimit | クレジットカード有効期限(月/年)
(例: 05/02) |
- "not_null" は、他の全てチェック句と組み合わせて使用できます。
- "not_null" 以外のチェック句は、データ無し(null)の場合を正常とみなします。
- 例えば、入力必須でしかもメールアドレスに場合は、"not_null mail_address"のように組み合わせて使用します。
(使用例)
<HTML>
<HEAD>
<META HTTP-EQUIV=Content-Language CONTENT=ja>
<META HTTP-EQUIV=Content-Type CONTENT='text/html; charset=UTF-8'>
<TITLE>入力処理(メール送信)<TITLE>
</HEAD>
<BODY>
<!--#!START-->
<FORM METHOD="POST" ACTION="/cgi-bin/PSN-send?mailto:xxxxxxxx@psn.ne.jp">
<!------- 入力確認画面、登録完了画面もUTF-8に統一 --------->
<INPUT TYPE="hidden" NAME="#!CHARSET" value="UTF-8">
<!------- 入力データ確認画面を変更 --------->
<INPUT TYPE="hidden" NAME="#!TITLE"
value="<H2>入力データの確認画面</H2>">
<INPUT TYPE="hidden" NAME="#!SUBMIT" value="登録">
<INPUT TYPE="hidden" NAME="#!BACK" value="戻る">
<!------- データ入力確認HTMLファイル名 ------->
<INPUT TYPE="hidden" NAME="#!CONFIRMHTML"
value="/home/USERID/public_html/aaa.html">
<!------- 入力データ登録完了画面を指定 ------->
<INPUT TYPE="hidden" NAME="#!NEXTPAGE"
value="/home/USERID/public_html/aaa_nect.html">
<!------- フォームの名称とメールの件名を指定 ------->
<INPUT TYPE="hidden" NAME="FORM:" value="xxxの申込">
<table border=1 cellpadding=4 cellspacing=1 width=560>
<tr><td>氏 名 </td><td>
<INPUT TYPE="text" NAME="氏名" SIZE=48 MAXLENGTH=64>
<INPUT TYPE="hidden" NAME="check:氏名" value=not_null>
</td></tr>
<tr><td>ユーザ名 </td><td>
<INPUT TYPE="text" NAME="ユーザ名" SIZE=12 MAXLENGTH=8>
<INPUT TYPE="hidden" NAME="check:ユーザ名" value="not_null ascii">
</td></tr>
<tr><td>パスワード</td><td>
<INPUT TYPE="text" NAME="パスワード" SIZE=12 MAXLENGTH=8>
<INPUT TYPE="hidden" NAME="check:パスワード" value="ascii">
</td></tr>
<tr><td>E-mail </td><td>
<INPUT TYPE="text" NAME="E-mail:" SIZE=48 MAXLENGTH=64>
<INPUT TYPE="hidden" NAME="check:E-mail:" value="mail_address ascii">
</td></tr>
<tr><td>電話番号</td><td>
<INPUT TYPE="text" NAME="電話番号" SIZE=48 MAXLENGTH=64>
<INPUT TYPE="hidden" NAME="check:電話番号" value="tel">
</td></tr>
<tr><td>カード番号</td><td>
<INPUT TYPE="text" NAME="カード番号" SIZE=48 MAXLENGTH=64>
<INPUT TYPE="hidden" NAME="check:カード番号" value="cardno">
</td></tr>
<tr><td>カード有効期限</td><td>
<INPUT TYPE="text" NAME="カード有効期限" SIZE=48 MAXLENGTH=64>
<INPUT TYPE="hidden" NAME="check:カード有効期限" value="cardlimit">
</td></tr>
<tr><td>URL</td><td>
<INPUT TYPE="text" NAME="URL" SIZE=48 MAXLENGTH=64>
<INPUT TYPE="hidden" NAME="check:URL" value="url">
</td></tr>
<tr><td>申込/削除</td><td>
<INPUT TYPE="radio" NAME="申込/削除" VALUE="申込" CHECKED> 申込
<INPUT TYPE="radio" NAME="申込/削除" VALUE="削除"> 削除
</td></tr>
<tr><td>NTT 工事日 </td><td>
<INPUT TYPE="text" NAME="NTT工事日" SIZE=16 MAXLENGTH=10>
<INPUT TYPE="hidden" NAME="check:NTT工事日" value="date">
</td></tr>
</table>
<BR>
<INPUT TYPE=SUBMIT VALUE=" 申込">
</form>
<!--#!END-->
</BODY>
</HTML>
|
入力データのエラーが発生した場合には、次のような画面が表示されます。
この入力データ確認画面は、#!CONFIRMHTML、 <!--#!START--> および <!--#!END-->が指定されているときは、ページの途中に挿入されて表示されます。
|
|