手机
当前位置:查字典教程网 >编程开发 >ASP教程 >ASP中实现定时发送邮件的代码分享
ASP中实现定时发送邮件的代码分享
摘要:现在的这个项目需要用asp做定时邮件发送,好多人都说asp没有这样的功能。其实我在以前的一篇文章已经做过详细的解释了,不过那个是定时任务,基...

现在的这个项目需要用asp做定时邮件发送,好多人都说asp没有这样的功能。

其实我在以前的一篇文章已经做过详细的解释了,不过那个是定时任务,基本思路是一样的。

参考:ASP中实现执行定时任务的方法

这里我们使用JMail组件的方式来做,邮件的内容为单个网页,可以自由定制。

下面我们看看定时邮件发送的代码:

复制代码 代码如下:

Function getHTTPPage(url)

dim objXML

set objXML=createobject("MSXML2.SERVERXMLHTTP.3.0") '调用XMLHTTP组件,测试空间是否支持XMLHTTP

objXML.open "GET",url,false 'false表示以同步的方式获取网页代码,了解什么是同步?什么是异步?

objXML.send() '发送

getHTTPPage=bBytesToBstr(objXML.responseBody)'返回信息,同时用函数定义编码

set objXML=nothing'关闭

End Function

Function bBytesToBstr(body)

dim objstream

set objstream = CreateObject("adodb.stream") '//调用adodb.stream组件

objstream.Type = 1

objstream.Mode =3

objstream.Open

objstream.Write body

objstream.Position = 0

objstream.Type = 2

objstream.Charset = "GB2312"

'转换原来默认的UTF-8编码转换成GB2312编码,否则直接用XMLHTTP调用有中文字符的网页得到的将是乱码

bBytesToBstr = objstream.ReadText

objstream.Close

set objstream = nothing

end Function

Sub SendAction(subject,mailaddress,Tomail,sender,content,fromEmail,Fromer,UserName,PassWord)

Set oJmail=CreateObject("Jmail.Message")

oJmail.Logging=false

oJmail.Silent=True

oJMail.Priority = 3

oJmail.FromName=Fromer

oJmail.From= FromEmail

oJmail.CharSet="gb2312"

oJmail.MailServerUserName = UserName

oJmail.MailServerPassWord = PassWord

oJmail.ContentTransferEncoding = "base64"

oJMail.HTMLBody = content '邮件内容

oJMail.Body =content'"我们的邮件采用了HTML格式,但是您的邮件查看软件可能不支持"

oJmail.AddRecipient Tomail '收件人地址

oJmail.Subject = subject '标题

oJmail.Send(mailaddress)

End Sub

dim Subject,MailAddress,ToEmail,Sender,FromEmail,Fromer,PassWord,oJmail,usernames,tomail

dim username,useremail

dim pass,content

dim mailname,mailpass,mailform,mailsmtp

mailname="xxx" 'smtp邮箱的账号

mailpass="xxx" 'smtp邮箱的密码

mailform="xxx" 'smtp邮箱的署名

mailsmtp="xxx" 'smtp邮箱的smtp

MailAddress=mailsmtp ': 发件服务器的地址,如smtp.163.com

Sender=title' : 发件人姓名

Content=content' : 邮件内容

FromEmail=mailname' : 发件人邮件地址

Fromer=title ': 发件人姓名

UserName=mailform' : 发件邮件帐号

PassWord=mailpass' : 发件邮件密码

'需要指定的内容

content=getHTTPPage("http://www.jb51.net/")

Subject="标题" ': 邮件标题

Tomail="xxx" ': 收件人邮件地址

call SendAction(subject,mailaddress,Tomail,sender,content,fromEmail,Fromer,UserName,PassWord)

将这个文件设置为XXX.VBS以后放到数据库定时执行就可以了。

如果有什么不懂的可以直接问MK。

【ASP中实现定时发送邮件的代码分享】相关文章:

用ASP和SQL实现基于Web的事件日历

在asp中通过getrows实现数据库记录分页的一段代码

ASP中生成文本文件的两种方式

实现ASP程序执行时间统计类的代码

ASP + Serv-u 实现FTP的代码

ASP中字符与数字操作函数总结

用ASP实现距指定日期的倒记时程序源码

Jmail发邮件的例子

用asp实现检测文件编码

ASP是否可以定时触发事件

精品推荐
分类导航