メール通知

  • このエントリーをはてなブックマークに追加
  • 人気ブログランキング

今回は、メール通知です。

 

こちらをクリックしてください。

 

前回の入力フォームに、メールアドレスの入力項目を追加しました。
前回と同様に入力し、メールアドレスを正しく入力して下さい。

 

すると、画面上には入力された内容が表示され、
指定したメールアドレスに入力内容が送信されます。

 

画面表示は前回とほとんど変わりません。

Application.cfc

<cfcomponent>
<cfset this.name = "#hash(GetDirectoryFromPath(GetCurrentTemplatePath()))#">
<cfset request.mail_from    = "メール通知テスト<info@hoge.com>">
<cfset request.mail_port    = "123">
<cfset request.mail_server  = "mail.hoge.com">
<cfset request.mail_username= "test@hoge.com">
<cfset request.mail_password= "hoge">
</cfcomponent>

※変数の値は適当です。

index.cfm

<cfinclude template="define.cfm">
<!---解説
    define.cfmファイルを利用しています。

    cfincludeは、指定したcfmファイルを取り込んで
    プログラムを展開します。

    define.cfmの内容をその場所に書くのと同じです。
--->

<cfinclude template="header.cfm">
<!---解説
    header.cfmファイルを利用しています。
    このように分けることによって共通化できます。
    post.cfmでも使っていますので、画面表示の統一化がはかれます。
    画面上の操作性の統一もしやすくなります。
--->

<cfinclude template="form.cfm">
<!---解説
    form.cfmは入力項目用のファイルです。
--->

<cfinclude template="footer.cfm">
<!---解説
    footer.cfmファイルは画面表示の下の部分を表示します。
--->

post.cfm

<cfinclude template="define.cfm">
<cfinclude template="header.cfm">

<cfif IsDefined("url.chk")>
    <cfif url.chk eq "ok">

        <cfinclude template="disp.cfm">
        <!---解説
            disp.cfmファイルは入力項目の画面表示用です。
        --->

        <cfif form.mail eq "">
            <br>メールアドレスの設定がなかったので送信しませんでした。<br><br>
        <cfelse>

            <cfinclude template="send_mail.cfm">
            <!---解説
                send_mail.cfmファイルはメール送信します。
            --->

        </cfif>
    </cfif>
</cfif>

<a href="index.cfm">もう一度入力する</a><br>

<cfinclude template="footer.cfm">

send_mail.cfm

<cfmail
    from    ="#request.mail_from#"
    to      ="#form.mail#"
    subject ="[#title#] メール通知テスト"
    username = "#request.mail_username#"
    password = "#request.mail_password#"
    port="#request.mail_port#"
    server  ="#request.mail_server#">
<!---解説
    メール送信するにはcfmailタグを使用します。
    入力された内容がメール内容となって送信されます。

    from部分,server部分に変数が指定されています。
    プログラムを見ても見当たりませんね。

    実はColdFusionは指定したプログラムを実行する前に
    必ずApplication.cfcを実行します。
    そのファイルの中で
    request.mail_from変数
    request.mail_server変数など
    を指定しています。
--->

以下の内容が入力されました。
    
○名前
#form.my_name#

○メールアドレス
#form.mail#

○都道府県
#form.tdfk#

○誕生日
#form.year#年#form.month#月#form.day#日

-----------------------------------------------------------
※このメールは以下の場所からテストされています。
http://utalab.biz/test/_base/005/index.cfm

間違ってメールを送られた方は申し訳ありませんでした。
http://www.utalab.com/
-----------------------------------------------------------
</cfmail>

Application.cfcについて

ColdFusionは必ずApplication.cfcを最初に読みに行きます。

 

実行しているディレクトリになかったらその上位ディレクトリ、
そこにもなかったらまた上位とたどっていきます。

 

いろいろなシステムを作る場合には
Application.cfcを設置したディレクトリから
下を利用するものとします。

 

システムごとに必要な変数などは
Application.cfcに書いておくとよいでしょう。

★コラム「メール」

ColdFusionをはじめたばかりのころ、以下の本を読みました。

▽ColdFusion入門第2版

 

はじめの方にメール送信の簡単なサンプルがありました。

今回と同じように簡単な入力フォームとcfmailタグを使うものです。

 

それを試したらほんとにメール送信が簡単にできたので、
めちゃくちゃ感動しました。

 

JavaやASP、PHPなど、探し方が悪いのか、
メールの送信方法がわかりませんでした。

 

たぶん複雑な手続きや書き方なんだろうと思ってますが、
cfmailタグを利用したColdFusionのメール送信方法は簡単でした。

 

なぜこんなに感動したかというと、
みなさんも利用されるようにメールはとても便利です。

 

今回の例のようにメール通知を利用すると、
相手に確実にメールが届くことにより、
メールアドレスの正当性がわかります。

 

また、
「登録ありがとうございました」
などとメールにちょっと書いておくと、
ただ画面表示だけのものよりは、なんかうれしかったりします。

 

また、オークションなどで自分の入札金額より高く入札されたとか、
ちょっとしたサイトの変化をメールで連絡など、

便利このうえありません。

 

 

昔、「日経IT21」という雑誌の中で
「ケータイで『eチラシ』」
という特集が感動ものでした。

 

ある床屋さんの例がありました。
その床屋さんは個人でやっているこじんまりとしたお店。
予約制でやっているそうです。

 

事前にお客さんのメールアドレスを登録してもらい、
予約がなくて暇なときには、
お客さんの携帯にメールをだします。

割引クーポンです。

 

「メールを見た」
というお客さんは安くできるので便利、
床屋さんは空いている時間を埋めることができて
両者お得ということになります。

 

そのほかにもいろいろな利用方法、
安価なASPサービスなど紹介されていました。

 

今回のcfmailタグの利用、
これから先紹介するデータベースの扱いをマスターすると、
もうアイデア次第でいろいろできるでしょう。

  • このエントリーをはてなブックマークに追加
  • 人気ブログランキング

この記事に関連する記事一覧

最近の投稿
カテゴリー
タグ
アーカイブ
プロフィール