深圳升蓝软件
数据库开发 .Net技术  |  ASP技术 PHP技术 JSP技术 应用技术类   
Hiblue Software

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


March 25,2004
     邮件列表(Mailing List)是当前最受欢迎的网络服务之一。本文通过一个示例系统的建设,介绍在ASP环境下邮件列表功能的实现方法。
   
   
   
       ChinaByte网络学院的《Java Mail API及其应用》一文介绍了在Java中简单邮件列表服务功能的实现方法,本文介绍的是类似功能在ASP应用中的实现。我们将通过一个示例系统具体说明其实现过程。
   
   
       一、系统概貌
   
      
    整个应用系统可以分为两个部分,即面向最终用户的功能和面向管理任务的功能。面向最终用户的功能主要包括:提供输入界面让用户输入个人信息(用户名字和Email地址等)并将其注册到“客户登记簿”,提供“取消订阅邮件列表”功能。
   
   
      
    管理员访问管理界面之前应通过简单的安全检查。成功进入管理界面之后,管理员需要执行的操作包括查看、编辑和删除用户记录,编辑邮件以及发送邮件给所有订阅者。
   
   
      
    向订阅者发送邮件需要用一个服务器部件来完成。在本实现中我们将使用ServerObjects的ASPMail
    3.0。据该公司网站介绍,在所有商业或免费的类似产品中,ASPMail在ASP环境下的应用最为广泛,包括Microsoft、Intel、HP在内的许多公司均使用ASPMail,从它的Web网站可以下载试用版本。试用版本的ASPMail将在由它所发送的每个邮件末尾加上版权声明。当然,也可以选用其它类似的服务器部件,包括Jmail以及NT
    服务器(Service Pack 4)提供的CDONTS.NewMail对象。下面我们简单介绍这两个部件的使用,你可以按照这里的介绍替换本文实现中的ASPMail。
   
   
       CDONTS只有在NT服务器上才是可用的。而ASPMail除了NT服务器、工作站之外还可以用于Win9x。CDONTS是Collaboration
    Data Objects for NT Server的缩写,邮件的发送任务可以用它的NewMail对象完成。和ASPMail以及Jmail不同,NewMail对象不要求指定SMTP服务器信息,它总是假定邮件是通过本地机器上安装的邮件服务发送的。发送一个简单的纯文本邮件的VBScript代码如下:
   
   
     ' 创建NewMail对象实例
     Set mail = Server.CreateObject("CDONTS.NewMail")
     ' 设置收件人,发件人等信息
     mail.From = "[email protected]"
     mail.To = "[email protected]"
     ' 邮件内容
     mail.Body = "邮件内容."
     ' 发送邮件
     mail.Send
     Set mail = Nothing
   
       Jmail是完全免费的,由Dimac开发。用它来发送邮件的代码为:
   
     ' 创建对象
     Set Jmail = Server.CreateObject("Jmail.SMTPMail")
     ' 指定邮件服务器
     Jmail.ServerAddress = "mail.mydomain.com"
     ' 发件人,收件人,主题
     Jmail.Sender = "[email protected]"
     Jmail.AddRecipientEx "Guest0", "[email protected]"
     Jmail.Subject = "邮件主题"
     ' 邮件内容
     Jmail.Body = "邮件内容"
     ' 发送邮件
     Jmail.Execute
   
       我们用Access数据库guestbook.mdb来存储用户信息。该数据库只含一个表Guests。Guests表的字段名称及其类型如下:
   
    Guests表结构
    字段名称 类型 大小 说明
    Guest_ID 自动编号 长整形 主键
    Guest_Name 文本 50
    Guest_Email 文本 50
    Mail_List 是/否
    Sign_Date 日期/时间
    Guest_Comment 文本 255
   
   
       每个用户记录都需要一个唯一标识,因此我们将这里的Guest_ID字段定义为自动编号类型。将Mail_List字段设为是/否类型使得我们可以快速和方便地检查用户是否要求加入邮件列表。Sign_Date字段保存的是用户注册日期,请将其缺省值设置为Now()。所有其它字段的含义均可从其名字看出
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved