利用SMTP和ASP发送CDONTS电子邮件
IIS中有一个组件CDONTS(Collaboration Data Objects for Windows NT server)可以用来发送邮件。Asp编写程序如下:
1 <%%>
2 <%option explicit%>
3 <html>
4 <head>
5 <title>发邮件</title>
6 </head>
7 <body bgcolor=#ffffff>
8 <%
9 dim strname,strsubject,strquery,strsender,strfile
10 strname=trim(request.form("recivename"))
11 strsubject=trim(request.form("subject"))
12 strquery=trim(request.form("message"))
13 strsender=trim(request.form("sender"))
14 strfile=trim(request.form("file"))
15 if (strname<>""and strsubject<>"" and strquery<>"" and strsender<>"") then
16 dim objmail
17 set objmail=server.createobject("cdonts.newmail")
18 objmail.from=strsender
19 objmail.to=strname
20 objmail.subject=strsubject
21 objmail.body=strquery
22 if strfile<>"" then
23 objmail.attachfile strfile
24 end if
25 objmail.send
26 response.write "successful, thank you!"
27 set objmail=nothing
28 else
29 %>
30 <h1>发邮件</h1>
31 <form action="<%=request.servervariables("script_name")%>"
32 method=post>
33 <table border=0>
34 <tr><td>收件人</td><td><input type=text name="recivename"
35 value="" size=40></td></tr>
36 <tr><td>主题</td><td><input type=text name="subject"
37 value="" size=40></td></tr>
38 <tr><td>邮件</td><td><textarea name="message"
39 cols=40 rows=10></textarea></td></tr>
40 <tr><td>发件人</td><td><input type=text name="sender"
41 value="" size=40></td></tr>
42 <tr><td>附件</td><td><input type=file name="file"
43 value="" size=40></td></tr>
44 </table>
45 <input type="submit" value="发送">
46 <input type="reset" value="取消">
47 </form>
48 <%end if%>
49 </body>
50 </html>
该程序可以发送
第10-14行将从表单获得的数据赋给变量。
第30-47行是发邮件填写的表单。
第15行语句判断表单是否填写。如果没填写,则执行30-47行语句。
第17行创建一个对象newmail,它允许用send方法发送电子邮件。接受如下参数: objmail.send fromaddress , toaddress , subject , body , importance
含义为fromaddress表示发件人地址,toaddress表示收件人地址,subject表示主题,body表示邮件内容,importance表示重要性(0为不重要,1为正常,2为重要)。
第18-21行将发件人,收件人,主题,邮件内容的值赋给newmail对象的各个属性。
第22判断是否有附件,若有,则赋给newmail的attachfile属性。
第25行发送邮件。
第27行销毁objmail对象。设置为nothing 。
newmail还有bodyformat和mailformat属性。Bodyformat用来指明邮件正文是纯文本(值为1)还是包含HTML(值为0)。Mailformat指明是文本消息(值1)还是MIME格式消息(值0),可在HTML格式邮件中使用图象。
[此贴子已经被作者于2007-10-4 16:35:46编辑过]