שליחת דואר באמצעות האובייקט CDONTS

‏ • 17 באפריל, 2002

על מנת לשלוח דואר אלקטרוני מהאתר, ללא שימוש בתוכנת הדואר של הגולש, עלינו להשתמש באובייקט שליחת דואר כלשהו.
רבים הם האובייקים הקיימים בשוק כיום, חלקים חינמיים וחלקם בתשלום.
מאמר זה מדגים את השימוש באובייקט CDONTS, אשר לרוב מגיע יחד עם ה-IIS.
יש לזכור שלא כל האובייקטים מותקנים על כל השרתים. בדרך כלל כל שרת תומך באובייקט אחד או שניים. לפני שניגשים לכתוב קוד שליחת דואר באמצעות אובייקט כלשהו, יש לברר איזה מהם מותקן על השרת בו תרוץ האפליקציה, ולכתוב את הקוד בהתאם.

קודם כל, צריך לזכור ש- CDONTS.newMail יודע לשלוח דוא"ל אחד בלבד, ככה שאחרי כל objMail.send צריך לייצר אותו מחדש, אם רוצים לשלוח עוד דוא"ל.

הגדרת המשתנים

קודם כל, נגדיר את המשתנים שיכילו את האובייקט עצמו, הטקסט שיישלח בגוף ההודעה, כותרת ורשימת הנמענים:

dim objMail, mailBody, carbonCopy, blindCarbonCopy, mailSubject

ונקבע את תוכנם:mailBody = "<HTML>"& vbCrLf &_"<HEAD>"& vbCrLf &_"<TITLE>This is my mail's Body</TITLE>"& vbCrLf &_"</HEAD>"& vbCrLf &_"<BODY dir=rtl>"& vbCrLf &_"<h1 align=center>והנה דואר בעברית…</h1>"& vbCrLf &_"</BODY>"& vbCrLf &_"</HTML>"& vbCrLfcarbonCopy = "[email protected],[email protected]"blindCarbonCopy = "[email protected]"mailSubject = "מה המצב אחי?"


יצירת האובייקט

Set objMail = Server.CreateObject("CDONTS.Newmail") ' Set the CDONTS.newMail Object

המשתנה objMail מכיל עכשיו מופע של אובייקט ה-CDONTS.


הגדרות האובייקט

אם ברצונינו לשלוח את הדואר בפורמט HTML, נשנה את מאפייני ה-bodyformat וה- MailFormat של האובייקט:
objMail.bodyformat=cdoBodyFormatHTML ' Send your mail as HTMLobjMail.MailFormat=cdoMailFormatMIME ' Send your mail as HTML

כדי לשלוח את המייל בערית לוגית, נשתמש בשיטה SetLocaleIDs, ונשלח לה את המספר 1255, המציין עברית לוגית:
objMail.SetLocaleIDs(1255) ' send Logical Hebrew by mail

נקבע את כתובת השולח:
objMail.From = "[email protected]" ' From mail Address

נקבע את הנמענים:
objMail.To = "[email protected]" ' To mail AddressobjMail.Cc = carbonCopy ' some more recipientsobjMail.Bcc = blindCarbonCopy ' some Hidden recipients

Cc ו- Bcc מציינים למי יישלחו עותקים ועותקים נסתרים של המייל. כזכור, הצבנו ערכים בתוך המשתנים בתחילת הסקריפט. אם אין לנו צורך לשלוח עותקים, פשוט נדלג עליהם.

נקבע את עדיפות ההודעה
objMail.Importance = 2 '(0, 1, 2) mail Priority (0 – low, 2 – high)

נציב את הכותרת לדואר, אותה הגדרנו למעלה:
objMail.Subject = mailSubject ' The subject

נוסיף את גוף ההודעה
objMail.Body = mailBody ' The Mail Body

אם ברצונינו לצרף קובץ להודעה, נציב את הנתיב לקובץ, והשם שאנו רוצים שיוצג לקובץ בתוך ההודעה, בשני משתנים חדשים:
FileName = "C:websiteImages.gif" ' a full path to a file For attachmentDisplayFileName = "picture" ' a name to display for the attached File

נצרף את הקובץ להודעה
objMail.AttachFile FileName, DisplayFileName ' attach the file


שליחת הדואר

לאחר שסיימנו לציין את הנמענים, תוכן הדואר, כותרתו, ההגדרות השונות, הקבצים המצורפים וכו', הגיע הזמן לשלוח את הדואר:
objMail.Send ' Send the Mail

ולא לשכוח לשחרר את הזכרון שהקצנו לאובייקט
set objMail = nothing


הסקריפט בשלמותו










1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62  








<%
dim objMail, mailBody, carbonCopy, blindCarbonCopy, mailSubject

mailBody = "<HTML>"& vbCrLf &_
"<HEAD>"& vbCrLf &_
"<TITLE>This is my mail's Body</TITLE>"& vbCrLf &_
"</HEAD>"& vbCrLf &_
"<BODY dir=rtl>"& vbCrLf &_
"<h1 align=center>והנה דואר בעברית…</h1>"& vbCrLf &_
"</BODY>"& vbCrLf &_
"</HTML>"& vbCrLf

carbonCopy = ""
blindCarbonCopy = ""
mailSubject = "מה המצב אחי?"

Set objMail = Server.CreateObject("CDONTS.Newmail") ' Set the CDONTS.newMail Object


objMail.bodyformat=cdoBodyFormatHTML ' Send your mail as HTML


objMail.MailFormat=cdoMailFormatMIME ' Send your mail as HTML


objMail.SetLocaleIDs(1255) ' send Logical Hebrew by mail


objMail.From = "[email protected]" ' From mail Address


objMail.To = "[email protected]" ' To mail Address


objMail.Cc = carbonCopy ' some more recipients


objMail.Bcc = blindCarbonCopy ' some Hidden recipients


objMail.Importance = 2 '(0, 1, 2) mail Priority (0 – low, 2 – high)


objMail.Subject = mailSubject ' The subject


objMail.Body = mailBody ' The Mail Body


FileName = "C:websiteImages.gif" ' a full path to a file For attachment


DisplayFileName = "picture" ' a name to display for the attached File


objMail.AttachFile FileName, DisplayFileName ' attach the file


objMail.Send ' Send the Mail

set objMail = nothing
%>


בהצלחה!

תגיות: , , ,

תגובות בפייסבוק