当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP环境下邮件列表功能的实现 (四)(推荐)

ASP
一个ASP版的图片浏览管理器
无组件上传图片至SQLSERVER数据库
利用Jmail.Message发送邮件
用Web页面执行客户端程序
多图片上传到指定的目录并存到数据库
dreamweaverMX通用分页代码研究
下拉菜单输入,根据输入内容自动定位
中文的无组件文件上传ASP函数
一个利用adsi得到局域网信息的asp文件
根据需要动态include不同的文件
让自定义文件下载支持断点续传
用数组实现数据记录的批量录入方法
上传的进度条 实时反映上传情况
用ASP动态生成javascript的表单验证代码
ASP 编程中20个非常有用的例子
ASP生成Word文档的又一方法
用asp解析图片地址,并将其保存。
利用ASP的文件操作实现用户管理
创建 Visual Basic COM 组件在 ASP 中使用
调试 ASP 中使用的 Visual Basic COM 组件

ASP环境下邮件列表功能的实现 (四)(推荐)


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

       最后要实现的功能是邮件的编辑和发送。这部分功能由Email_List.asp文件提供,其界面如图6所示。接下来我们就来分析这个文件。

   Email_List.asp的内部工作过程和edit_record.asp很类似。管理员在表单中写作邮件并提交它,系统将选择所有Mail_List字段值为“是”的记录,然后将新邮件的拷贝发送给这些记录中的Guest_Mail地址。

   每一次发送邮件我们都重新创建mailer对象,发送完成后关闭它。这一点非常重要,这是由于我们需要修改邮件的正文,加入取消订阅邮件列表的URL和ID号。

 if Request.ServerVariables("REQUEST_METHOD") = "POST" then
  strSubject = Request.Form("txtSubject")
  strBody = Request.Form("txtBody")
  strFrom = Request.Form("txtFrom")
  ' 从数据库选取收件人记录
  strSQL_SelectEmail = "SELECT Guests.Guest_ID, Guests.Guest_Email " & _
  " FROM Guests WHERE ((Guests.Mail_List)=-1);"
  Set oConn = Server.CreateObject("ADODB.Connection")
  oConn.Open strDSNPath
  Set rsMail = oConn.Execute(strSQL_SelectEmail)
  if rsMail.BOF = True and rsMail.EOF = True then
  ...数据库为空提示,略...
  else
  rsMail.MoveFirst
  Do While Not rsMail.EOF
  ' 创建对象
  Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
  ' 填写其它邮件标题信息
  Mailer.FromName = strFrom
  Mailer.FromAddress = strEmailFrom
  Mailer.RemoteHost = strHost
  Mailer.Subject = strSubject
  Mailer.BodyText = ...设置邮件内容,略...
  strTo = rsMail.Fields("Guest_Email").Value
  If strTo < > "" then
  Mailer.Recipient = strTo
  if Mailer.SendMail then
  ...发送成功提示,略...
  else
  ...发送失败提示,略...
  end if 'Mailer.SendMail
  end if 'strTo < > ""
  rsMail.MoveNext
  Set Mailer = Nothing
  Loop
  end if 'rsMail.BOF = True and rsMail.EOF = True
  rsMail.Close
  Set rsMail = Nothing
  oConn.Close
  Set oConn = Nothing
 end if 'REQUEST_METHOD = "POST"

   这里需要注意的是,我们将变量strHost的值赋给ASPMail的实例对象的RemoteHost属性。因此,必须保证strHost的值是一个合适的邮件服务器名字(如mail.mydomain.com)。