当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp jmail发邮件 详细解析

ASP
Web程序中网页间数据传递方法小结
加速ASP程序的显示速度
一个求最大值与最小值的函数
对Session和Cookie的区分与理解
ASP VBScript 函数速查表
用Asp隐藏文件路径,实现防盗链
如何使用ASP生成HTML文件
常用Email组件发送函数
用asp实现QQ在线查询
创建一个ASP通用分页类(一)
创建一个ASP通用分页类(二)
如何使用ASP制作类似安装向导的页面?
远程注册自己的组件
浅谈ASP中Request对象获取客户端数据的顺序
一个拷贝整个文件夹(包括子文件夹)的方法
十天学会ASP之第一天
十天学会ASP之第二天
十天学会ASP之第三天
十天学会ASP之第四天
十天学会ASP之第五天

ASP 中的 asp jmail发邮件 详细解析


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 207 ::
收藏到网摘: n/a

发个个比较详细的asp与jmail 实现发送邮件的代码,前一段时间有发过一个简单的JMAIL邮件发邮件的代码,今天就把这个代码做一个具体的注解,并增加了另外两个格式的代码,并举几个简单的例子:
首先是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 = "Server Address" '发送邮件的服务器
jmail.AddRecipient Email '邮件的收件人
jmail.SenderName = "SenderName" '邮件发送者的姓名
jmail.Sender = "Email Address" '邮件发送者的邮件地址
jmail.Priority = 1 '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
jmail.Subject = "Mail Subject" '邮件的标题
jmail.Body = "Mail Body" '邮件的内容
jmail.AddRecipientBCC Email '密件收件人的地址
jmail.AddRecipientCC Email '邮件抄送者的地址
jmail.Execute() '执行邮件发送
jmail.Close '关闭邮件对象
%>

w3 Jmail4.3组件重新设计了其内部结构——使用Message对象代替原来的单一对象Jmail.smtpmail发送邮件,有些方法需要身份验证的(如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 = "Email From for Sender" '发件人的E-MAIL地址
jmail.MailServerUserName = "UserName of Email" '登录邮件服务器所需的用户名
jmail.MailServerPassword = "Password of Email" '登录邮件服务器所需的密码
jmail.Subject = "Mail Subject" '邮件的标题
jmail.Body = "Mail Body" '邮件的内容
jmail.Prority = 1 '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
jmail.Send("Server Address") '执行邮件发送(通过邮件服务器地址)
jmail.Close() '关闭对象
%>


再讲一下微软自带的CDONTS组件的发信的方法:
<%
Set cdomail = Server.CreateObject("CDONTS.NewMail") '建立邮件对象
cdomail.Subject = "Mail Subject" '邮件标题
cdomail.From = "Sender's Mail" '发件人的地址
cdomail.To = "Email will from" '收件人的地址
cdomail.Body = "Mail Body" '邮件的内容
cdomail.Send '执行发送
%>
这种方法发送邮件是最简单的,同时也带来一定的问题,就是很少有服务器会开这项服务!
我们写程序,一般情况下都是说要代码模块化,这样方便维护,同时也方便移植。因此,我在这里将这个发邮件的写成一个子程,在调用的时候可以直接调用(当然,如果你高兴写成函数的话也是可以的,这个主要是看个人兴趣):
复制代码 代码如下:

<%
'参数说明
'Subject : 邮件标题
'MailAddress : 发件服务器的地址,如smtp.163.com
'Email : 收件人邮件地址
'Sender : 发件人姓名
'Content : 邮件内容
'Fromer : 发件人的邮件地址

Sub SendAction(subject, mailaddress, email, sender, content, fromer)
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 '邮件的内容
'由于没有用到密抄跟抄送,这里屏蔽掉这两句,如果您有需要的话,可以在这里恢复
'jmail.AddRecipientBCC Email '密件收件人的地址
'jmail.AddRecipientCC Email '邮件抄送者的地址
jmail.Execute() '执行邮件发送
jmail.Close '关闭邮件对象
End Sub
'调用此Sub的例子
Dim strSubject,strEmail,strMailAdress,strSender,strContent,strFromer
strSubject = "这是一封用JMAIL发送的测试邮件"
strContent = "JMail组件发送测试成功!"
strEmail = "[email protected]"
strFromer = "[email protected]"
strMailAddress = "mail.ubbcn.com"

Call SendAction (strSubject,strMailaddress,strEmail,strSender,strContent,strFromer)
%>