メール

トップ > 逆引きリファレンス > メール

メールを送信させるには(mailto:)

mailto: を用いることで、リンクをクリックした時に指定したメールアドレスを送信先としたメールソフトを起動することができます。

HTML
<a href="mailto:foo@example.com">foo@example.com</a>

mailto:でメールの件名やCcを指定するには

メールソフトを起動したときに、件名(Subject)、写し送付先(Cc)、秘密の写し送付先(Bcc)等を指定するには次のようにします。

HTML
<a href="mailto:foo@example.com?subject=TEST&cc=baa@example.com">TEST</a>

区切り文字は最初がクエスチョンマーク(?)で、次からはアンドマーク(&)です。Internet Explorer と Outlook Express の組み合わせの場合、日本語や半角スペースを用いてもうまく動作しているようですが、正しくは、日本語、記号、半角スペースなどは %20 の形式に URLエンコードした文字を指定する必要があります。

mailto:であて先を複数指定するには

メールアドレスをカンマ(,)で複数記述することにより、あて先を複数指定することができます。

HTML
<a href="mailto:foo@example.com,baa@example.com?subject=TEST">TEST</a>

mailto:でメールの本文を指定するには

mailto: によるメール送信で、メールの本文を指定する場合は、subject や cc と同様に body を指定します。

HTML
<a href="mailto:foo@example.com?subject=TEST&body=TESTMAIL">TEST</a>

フォームに入力した内容をメール送信するには(mailto)

フォーム(<form>)の action 属性に mailto: を指定することでフォームに入力した内容をメールで送信することは可能です。しかしこの方法は、ブラウザの種類やバージョン、設定状況によって動作が異なったり、せっかく入力した内容を送信できないケースもありますので、あまりオススメできる方法ではありません。

HTML
<form method="POST" enctype="text/plain"
      action="mailto:foo@example.com?subject=TESTMAIL">
<div>氏名:<input type="text" name="NAME"></div>
<div>年齢:<input type="text" name="AGE"></div>
<div>住所:<input type="text" name="ADDR"></div>
<div><input type="submit" value="送信"></div>
</form>

フォームに入力した内容をメール送信するには(CGI)

メール送信フォームの CGI を自分で設置することもできます。

フォームメールをデコードするには

mailto: によるフォームメールで enctype="text/plain" を指定しない場合、データは POSTDATA.ATT という添付ファイルで下記のような形式にエンコードされた状態で送信されます。

DATA
NAME=%82%A0%82%A2%82%A4

この形式のデータを読むためには下記のようなソフトが必要になります。

あまり便利ではありませんが、次のような JavaScript を記述した簡単な自作Webページでデコードすることもできます。ただし、最近の Internet Explorer では、漢字コードにUnicodeを使用しているため、うまく動作しないようです。Netscape ブラウザで利用可能です。

HTML
<form>
  <input type="text" name="t1">
  <input type="button" value="→変換→"
    onclick="this.form.t2.value=unescape(this.form.t1.value)">
  <input type="text" name="t2">
</form>

Copyright (C) 2003-2017 杜甫々
初版: 2003年10月12日、最終更新:2017年12月24日
http://www.tohoho-web.com/how2/mail.htm