少し前に、簡単な JMAIL 電子メール コードを送信しました。今日は、このコードについて具体的なコメントを付け、他の 2 つの形式コードを追加し、いくつかの簡単な例を示します。
1 つ目は jmail.smtpmail のコア コードです:
<%
Set jmail = Server.CreateObject("JMAIL.SMTPMail") 'JMAIL オブジェクトを作成します
jmail.silent = true 'JMAIL は例外エラーをスローせず、戻り値は FALSE と TRUE です
jmail.logging = true '使用状況ログを有効にする
jmail.Charset = "GB2312" 'メール本文のコードは簡体字中国語です
jmail.ContentType = "text/html" '電子メールの形式は HTML です
jmail.ServerAddress = "サーバーアドレス" 'メールを送信するサーバー
jmail.AddRecipient Email 'メールの受信者
jmail.SenderName = "SenderName" 'メール送信者の名前
jmail.Sender = "メールアドレス" 'メール送信者のメールアドレス
jmail.Priority = 1 '電子メール緊急プログラム、1 が最も速く、5 が最も遅く、3 はデフォルト値です
jmail.Subject = "メールの件名" 'メールのタイトル
jmail.Body = "メール本文" 'メールの内容
jmail.AddRecipientBCC Email 'ブラインドメール受信者のアドレス
jmail.AddRecipientCC Email 'メールのコピー者のアドレス
jmail.Execute() 'メール送信実行
jmail.Close 'メールオブジェクトを閉じます
%>
w3 Jmail4.3 コンポーネントは内部構造を再設計しました。電子メールの送信には、元の単一オブジェクト Jmail.smtpmail の代わりに Message オブジェクトを使用します。一部のメソッド (163、yahoo など) は認証を必要としますが、これは次の方法で解決できます。次の方法:
<%
Set jmail = Server.CreateObject("JMAIL.Message") 'メール送信用のオブジェクトを作成する
jmail.silent = true '例外エラーをシールドし、FALSE 値と TRUE 値を返す j
mail.logging = true 'メールログを有効にする
jmail.Charset = "GB2312" 'メールのテキストエンコーディングは国家標準です
jmail.ContentType = "text/html" 'メールの形式はHTML形式です
jmail.AddRecipient Email '電子メール受信者のアドレス
jmail.From = "送信者のメール送信者" '送信者の電子メール アドレス
jmail.MailServerUserName = "UserName of Email" 'メールサーバーへのログインに必要なユーザー名
jmail.MailServerPassword = "メールのパスワード" 'メールサーバーへのログインに必要なパスワード
jmail.Subject = "メールの件名" 'メールのタイトル
jmail.Body = "メール本文" 'メールの内容
jmail.Prority = 1 '電子メール緊急プログラム、1 が最も速く、5 が最も遅く、3 はデフォルト値です
jmail.Send("Server Address") 'メール送信を実行します(メールサーバーアドレス経由)
jmail.Close() 'オブジェクトを閉じる
%>
Microsoft 独自の CDONTS コンポーネントを使用してメッセージを送信する方法について話しましょう:
<%
Set cdomail = Server.CreateObject("CDONTS.NewMail") 'メール オブジェクトを作成します
cdomail.Subject = "メール件名" 'メールタイトル
cdomail.From = "送信者のメール" '送信者のアドレス
cdomail.To = "電子メールの送信元" '受信者のアドレス
cdomail.Body = "メール本文" 'メールの内容
cdomail.Send '送信実行
%>
この方法は電子メールを送信するのに最も簡単ですが、このサービスを開くサーバーがほとんどないという特定の問題も発生します。
プログラムを書くとき、私たちは通常、メンテナンスや移植を容易にするためにコードをモジュール化する必要があると言います。したがって、この電子メールをここでサブルーチンとして記述します。これは、呼び出し時に直接呼び出すことができます (もちろん、関数として記述しても問題ありません。これは主に個人的な関心に依存します):
<%
'パラメータの説明
'件名: メールのタイトル
'MailAddress: 送信サーバーのアドレス (smtp.163.com など)
'メールアドレス: 受信者のメールアドレス
'送信者: 送信者の名前
'コンテンツ: メールの内容
'Fromer: 送信者のメールアドレス
Sub SendAction(件名, メールアドレス, メール, 送信者, 内容, 送信者)
Set jmail = Server.CreateObject("JMAIL.SMTPMail") 'JMAIL オブジェクトを作成します
jmail.silent = true 'JMAIL は例外エラーをスローせず、戻り値は FALSE と TRUE です
jmail.logging = true '使用状況ログを有効にする
jmail.Charset = "GB2312" 'メール本文のコードは簡体字中国語です
jmail.ContentType = "text/html" '電子メールの形式は HTML です
jmail.ServerAddress = mailaddress 'メールを送信するサーバー
jmail.AddRecipient Email 'メールの受信者
jmail.SenderName = sender 'メール送信者の名前
jmail.Sender = fromer 'メール送信者のメールアドレス
jmail.Priority = 1 '電子メール緊急プログラム、1 が最も速く、5 が最も遅く、3 はデフォルト値です
jmail.Subject = subject 'メールのタイトル
jmail.Body = content 'メールの内容
「BCC と CC は使用されていないため、これら 2 つの文はここでブロックされています。必要に応じて、ここで復元できます。」
'jmail.AddRecipientBCC Email 'ブラインドメール受信者のアドレス
'jmail.AddRecipientCC Email '電子メールのカーボンコピーのアドレス
jmail.Execute() 'メール送信実行
jmail.Close 'メールオブジェクトを閉じます
エンドサブ
'このSubの呼び出し例
Dim strSubject、strEmail、strMailAdress、strSender、strContent、strFromer
strSubject = "これは、JMAIL を使用して送信されたテストメールです"
strContent = "JMail コンポーネントはテストを正常に送信しました!"
strEmail = " [email protected] "
strFromer = " [email protected] "
strMailAddress = "mail.ubbcn.com"
SendAction の呼び出し (strSubject,strMailaddress,strEmail,strSender,strContent,strFromer)
%>
以上がメール送信コードに関する私の大まかな意見ですが、アドバイスをよろしくお願いします。