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

邮件列表(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 = "Guest0@Test.com"
 mail.To = "Guest1@Test.com"
 ' 邮件内容
 mail.Body = "邮件内容."
 ' 发送邮件
 mail.Send
 Set mail = Nothing

   Jmail是完全免费的,由Dimac开发。用它来发送邮件的代码为:

 ' 创建对象
 Set Jmail = Server.CreateObject("Jmail.SMTPMail")
 ' 指定邮件服务器
 Jmail.ServerAddress = "mail.mydomain.com"
 ' 发件人,收件人,主题
 Jmail.Sender = "admin@Test.com"
 Jmail.AddRecipientEx "Guest0", "Guest0@Test.com"
 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()。所有其它字段的含义均可从其名字看出

时间: 2024-12-31 02:46:32

ASP环境下邮件列表功能的实现 (一)的相关文章

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

邮件列表 邮件列表(Mailing List)是当前最受欢迎的网络服务之一.本文通过一个示例系统的建设,介绍在ASP环境下邮件列表功能的实现方法. ChinaByte网络学院的<Java Mail API及其应用>一文介绍了在Java中简单邮件列表服务功能的实现方法,本文介绍的是类似功能在ASP应用中的实现.我们将通过一个示例系统具体说明其实现过程. 一.系统概貌 整个应用系统可以分为两个部分,即面向最终用户的功能和面向管理任务的功能.面向最终用户的功能主要包括:提供输入界面让用户输入个人信息

ASP环境下邮件列表功能的实现

邮件列表 为最终用户提供的功能主要由一个HTML文件和两个ASP文件提供,它们负责接受用户的订阅申请以及退出邮件列表申请. 用户的个人信息在图1所示的登记表单中输入,其实现文件是homepage.htm.当用户提交表单,系统对用户输入数据进行必要的验证,然后把它们保存到数据库并提示注册成功信息.这部分功能可以在signbook.asp文件找到,下面的代码用于将用户输入数据保存到数据库: ' 如果用户输入数据验证通过则将它保存到数据库 if blnValid = True then ' 在数据库中

ASP环境下邮件列表功能的实现 (二)

为最终用户提供的功能主要由一个HTML文件和两个ASP文件提供,它们负责接受用户的订阅申请以及退出邮件列表申请. 用户的个人信息在图1所示的登记表单中输入,其实现文件是homepage.htm.当用户提交表单,系统对用户输入数据进行必要的验证,然后把它们保存到数据库并提示注册成功信息.这部分功能可以在signbook.asp文件找到,下面的代码用于将用户输入数据保存到数据库: ' 如果用户输入数据验证通过则将它保存到数据库 if blnValid = True then ' 在数据库中插入新记录

ASP环境下邮件列表功能的实现 (三)

在访问管理页面之前必须经过身份验证.本实现中我们用图3所示的secure.htm页面供管理员输入身份识别码,若用户输入值非空则用Cookies来保存它.执行管理任务的页面是admin.asp,每当用户试图访问这个页面,下面的代码将检查这个Cookies与用户身份识别码(这里是123456)是否匹配,如匹配失败则将该用户重定向到输入身份识别码的secure.htm页面. < % strPW1 = Request.Form("txtPW") if strPW1 < > &

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

最后要实现的功能是邮件的编辑和发送.这部分功能由Email_List.asp文件提供,其界面如图6所示.接下来我们就来分析这个文件. Email_List.asp的内部工作过程和edit_record.asp很类似.管理员在表单中写作邮件并提交它,系统将选择所有Mail_List字段值为"是"的记录,然后将新邮件的拷贝发送给这些记录中的Guest_Mail地址. 每一次发送邮件我们都重新创建mailer对象,发送完成后关闭它.这一点非常重要,这是由于我们需要修改邮件的正文,加入取消订阅

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

邮件列表 最后要实现的功能是邮件的编辑和发送.这部分功能由Email_List.asp文件提供,其界面如图6所示.接下来我们就来分析这个文件. [图6 ASPMailingList_6.gif] Email_List.asp的内部工作过程和edit_record.asp很类似.管理员在表单中写作邮件并提交它,系统将选择所有Mail_List字段值为"是"的记录,然后将新邮件的拷贝发送给这些记录中的Guest_Mail地址. 每一次发送邮件我们都重新创建mailer对象,发送完成后关闭它

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

邮件列表 在访问管理页面之前必须经过身份验证.本实现中我们用图3所示的secure.htm页面供管理员输入身份识别码,若用户输入值非空则用Cookies来保存它.执行管理任务的页面是admin.asp,每当用户试图访问这个页面,下面的代码将检查这个Cookies与用户身份识别码(这里是123456)是否匹配,如匹配失败则将该用户重定向到输入身份识别码的secure.htm页面. [图3 ASPMailingList_3.gif] < %    strPW1 = Request.Form("

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

邮件列表 为最终用户提供的功能主要由一个HTML文件和两个ASP文件提供,它们负责接受用户的订阅申请以及退出邮件列表申请. 用户的个人信息在图1所示的登记表单中输入,其实现文件是homepage.htm.当用户提交表单,系统对用户输入数据进行必要的验证,然后把它们保存到数据库并提示注册成功信息.这部分功能可以在signbook.asp文件找到,下面的代码用于将用户输入数据保存到数据库: [图1 ASPMailingList_1.gif] ' 如果用户输入数据验证通过则将它保存到数据库 if bl

如何在ASP环境下利用SOAP来调用C#开发的Web Services

services|web 如何在ASP环境下利用SOAP来调用C#开发的Web Services,作为.NET Web Services的斑竹,很多朋友都问我如何在其他环境下调用Web Services,原理其实很简单,大家都知道Web Services是基于SOAP协议通信的,在其他环境下自然可以利用SOAP来访问Web Services了.下面我就一个具体的例子来说明调用过程.开发环境:windows 2000          SOAP Tookit3.0          IIS 我用C