ASP程序发送信件的几种方法比较
类别: ASP教程
一、Jmail3以及以前的版本使用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 \'关闭邮件对象
%>
现在还有很多程序是使用这种方式来发信,这种方式有一个很大的缺陷,那就是发信是使用服务器本地smtp服务发出的,并没有通过任何smtp身份验证,如果服务器设置了需要使用身份验证,则发信会失败。现在因为反垃圾邮件的需要,越来越多的服务器开始注重这方面的设置问题,如果你使用此种方法发信突然出现不正常,则可能是服务器限制了匿名发信,上面的代码则就不会正常运作了。
这种方法我们不建议使用,但是现在还有很多asp程序使用此种方法,可能还是可以正常运作的,但是很难保证以后会一直正常,并且某些邮件服务器会拒收这种方法发出的信件,所以如果有可能的话,尽量不要使用这种方式。
二、 再讲一下微软自带的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 \'执行发送
%>
这种方法发送邮件是最简单的,同时也带来一定的问题,就是很少有服务器会开这项服务,即使开通,也因为没有身份验证信息,发出的信件会被很多服务器所拒收,强烈建议不使用。
三、 w3 Jmail4.3组件重新设计了其内部结构――使用Message对象代替原来的单一对象Jmail.smtpmail发送邮件,并且增加了需要身份验证的设置,同时对象的属性也比以前有很大改变,导致程序需要完全重写,新版的发信范例如下所示:
<%
Set jmail = Server.CreateObject("JMAIL.Message") \'建立发送邮件的对象
jmail.silent = true \'屏蔽例外错误,返回FALSE跟TRUE两值j
Jmail.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.Send("Server Address") \'执行邮件发送(通过邮件服务器地址)
jmail.Close() \'关闭对象
%>
使用这段代码发信,是当前最为稳定,也最为适用的发信方法,我们推荐使用Jmail发信的客户,使用此种方法来发信。
<%
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 \'关闭邮件对象
%>
现在还有很多程序是使用这种方式来发信,这种方式有一个很大的缺陷,那就是发信是使用服务器本地smtp服务发出的,并没有通过任何smtp身份验证,如果服务器设置了需要使用身份验证,则发信会失败。现在因为反垃圾邮件的需要,越来越多的服务器开始注重这方面的设置问题,如果你使用此种方法发信突然出现不正常,则可能是服务器限制了匿名发信,上面的代码则就不会正常运作了。
这种方法我们不建议使用,但是现在还有很多asp程序使用此种方法,可能还是可以正常运作的,但是很难保证以后会一直正常,并且某些邮件服务器会拒收这种方法发出的信件,所以如果有可能的话,尽量不要使用这种方式。
二、 再讲一下微软自带的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 \'执行发送
%>
这种方法发送邮件是最简单的,同时也带来一定的问题,就是很少有服务器会开这项服务,即使开通,也因为没有身份验证信息,发出的信件会被很多服务器所拒收,强烈建议不使用。
三、 w3 Jmail4.3组件重新设计了其内部结构――使用Message对象代替原来的单一对象Jmail.smtpmail发送邮件,并且增加了需要身份验证的设置,同时对象的属性也比以前有很大改变,导致程序需要完全重写,新版的发信范例如下所示:
<%
Set jmail = Server.CreateObject("JMAIL.Message") \'建立发送邮件的对象
jmail.silent = true \'屏蔽例外错误,返回FALSE跟TRUE两值j
Jmail.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.Send("Server Address") \'执行邮件发送(通过邮件服务器地址)
jmail.Close() \'关闭对象
%>
使用这段代码发信,是当前最为稳定,也最为适用的发信方法,我们推荐使用Jmail发信的客户,使用此种方法来发信。
- 上一篇: 用ASP实现分页的源码
- 下一篇: 利用ASP程序实现将远程页面的所有内容下载到本地
-= 资 源 教 程 =-
文 章 搜 索