ASP进阶教程Ⅹ:留言簿自动发E-Mail

教程

ASP本身没有发送邮件的能力,但是如果你希望用ASP来发送E-MAIL(例如:你有一个消息,只想让那些在你的留言薄上留了言的上网者们知道,你希望上网者在你的留言薄上填写完成后,你的留言簿便自动将该消息E-MAIL给留言的上网者),那么你需要安装一个ASP组件。并借助这些组件来帮你实现邮件的自动发送、回复等工作。
  
  
    如果你的ASP及WEB数据库的运行平台是IIS4(Internet Information Server 4.0),你可以使用CDONTS.DLL。如果你已经缺省安装过NT 4.0 Option Pack,CDONTS.DLL便存放在你机器的C:\Winnt\System32\目录下面。有了该组件我们还不能立即应用它,在对它进行应用之前我们必须先完成组件的注册,那么怎样才能对CDONTS.DLL进行注册呢?我们可以在MS-DOS方式下进入到CDONTS.DLL所在的目录C:\Winnt\System32\下输入:
    c:\winnt\system32>regsvr32 cdonts.dll
  (如果我们想将其御载可用指令: c:\winnt\system32>regsvr32/u cdonts.dll)
  
  
    在完成了组件的注册后,现在我们可以开始来解说如何对该组件的使用。我们可以用下面简单的脚本来给留言簿的添加自动发E-MAIL的功能。
  
  < %
  Dim MailObject
  Dim Email
  Email = Request.form("Email")
  Set MailObject = Server.CreateObject("CDONTS.NewMail")
  Set myMail = Server.CreateObject("CDONTS.NewMail")
  myMail.Subject = "欢迎您下次再来"
  MailObject.Send "你本人的E-MAIL", Email ,"欢迎您下次再来给我们留言。" myMail.Send
  Set myMail=Nothing
  %>
    将上述的代码COPY到manage2.asp 去,一个简单的通过ASP来发送E-MAIL的留言簿就实现了。也许你并不会满意这种发E-MAIL的方式,理由很简单:因为为了答谢你的网友对你的支持,你昨晚熬夜足足写了几千字(也许是我说少了)的感激话语,今早一大早起来才发现原来上述的留言簿竟然未具备发附件的功能,瞧,这有多气人的。还好,原来CDONTS.DLL也可以用来发送附件,事不宜迟,我们立即就将其奉献出来。< %
  Dim MailObject
  Dim Email Email = Request("Email")
  Set MailObject = Server.CreateObject("CDONTS.NewMail")
  att_file="D:\cwj\GO-asp\guestbook5\email.txt"
  f_name="email.txt"
  MailObject.From="你本人的E-MAIL"
  MailObject.To = Email
  MailObject.Subject="感谢您对我们工作的支持"
  MailObject.Body="感谢您对我们工作的支持"
  MailObject.AttachFile att_file,f_name
  MailObject.Send
  %>
  
  
    只需将上述的代码COPY下来用以取代第一个实例,我们的留言簿便能实现自动发附件功能。在这里值得我们注意的是:att_file="D:\cwj\GO-asp\guestbook5\email.txt"
  必须是我们放附件的绝对路径。其实除了CDONTS.DLL 组件外,有许多由第三方厂商开发的组件你也可以使用。例如据说连Intel公司也在用的ASPmail组件和似乎很受欢迎的w3 Jmail等等组件。能受到大家的欢迎,个中原由自是不言而宣的,我们可以直接从以下地方去下载它们。
  ASPmail组件的下载地址:http://www.flicks.com/ASPMail/intro.htm
  Jmail组件的下载地址:http://download.dimac.net/jmail/jmail.exe
  
    说实际的,我的第一个用ASP来发送E-MAIL的留言簿所用的组件就是ASPmail组件(自然是因为听说连Intel公司也在使用它的缘故)。既然使用过了,自然对其会有所了解,我想在这里也不妨对ASPmail组件的使用作下简单的介绍。
  
  
    应用ASPmail组件的方法其实也很简单,首先我们得先对该组件进行安装,安装完毕后在ASPmail的安装目录下面会附有Sample实例,我们只要对照着这些例子,再稍加改动即可。我在这里提供了一个实例给大家,并单独将使用该组件时所涉及到的所有其它文件一并放在ASPmail目录下面,大家可以从下载区下载后再细作研究,我在这里只稍作一下简单的说明。
    首先,我们在manage2.asp中输入<!--#include file="ASPmail/sendmail2.asp" -->并另存成manage3.asp,而具体sendmail2.asp的脚本如下所示:
  < %
  Set mailer = Server.CreateObject("ASPMAIL.ASPMailCtrl.1")
  %>
  < %
  name = Request.form("name")
  email = Request.form("email")
  subject = "欢迎您下次再来"
  memo = "欢迎您下次再来留言!"
  mailserver = "smtp.21cn.com"
  result = mailer.SendMail(mailserver, name, email, subject, memo)
  %>
    这里值得大家注意的是:mailserver = "smtp.21cn.com" 中填写的是SMTP服务器,我在这里用了21世纪的SMTP的邮件服务器来作例子,当然你也可以用其它地方的或你自己的(真是羡慕煞人了),就是有一点非常重要,你必须填写正确,而且确信它们确实是开通了该服务。至于我最后为什么又放弃了使用该组件,大家用过之后很可能如我者也不会在少数,原因很简单:就因为该免费的组件会在你所发送的每一封信的下面讨厌地放上几句催你赶快去购买它的注册版的文字。

时间: 2024-10-28 20:03:55

ASP进阶教程Ⅹ:留言簿自动发E-Mail的相关文章

ASP进阶教程Ⅸ:留言查询功能(一)

 当有一天,你的心情突然变得很坏,但是巧合的是,在你的留言簿中你的网友留了一句很让你振奋的话,于是你很快就重拾了快乐的心情.但是在不久后你又一次心情变坏,但是这次却没有上次那么幸运,因为没有人给予你鼓励,于是你自然就想再看一看上次那句令你很受振奋的话.这时你就会想:假如我的留言簿有留言查询功能就好了! 为了能达成你的心愿,于是我决定在本章教程为你解说具有留言查询功能的留言簿程序.在讲解之前,让我们还是先来学习将在源程序中用到的COMMAND对象. 首先让我们先来了解一下Command对象所提供的

ASP:留言簿自动发E-Mail

ASP本身没有发送邮件的能力,但是如果你希望用ASP来发送E-MAIL(例如:你有一个消息,只想让那些在你的留言薄上留了言的上网者们知道,你希望上网者在你的留言薄上填写完成后,你的留言簿便自动将该消息E-MAIL给留言的上网者),那么你需要安装一个ASP组件.并借助这些组件来帮你实现邮件的自动发送.回复等工作. 如果你的ASP及WEB数据库的运行平台是IIS4(Internet Information Server 4.0),你可以使用CDONTS.DLL.如果你已经缺省安装过NT 4.0 Op

ASP进阶教程:数据库版本的留言簿

教程|数据|数据库    在前面我们介绍了文件版本的留言簿,现在我们不妨来设想一下:如果留言文件里面的留言很多,而你又急于想寻找其中的某条留言时,这时打开txt留言文件,对着一段段的留言记录,你敢担保你不会当场晕倒吗?而且文件留言簿最令人讨厌还远不只是这个原因,更气人的是:譬如你已经找到了你要找的留言,而且是非要将其删除不可(当然是因为那段留言竟毫不留情地往你脸上抹黑的缘由啦),那么此时其余想对你大发赞赏之言的朋友,就会因为你正在做留言删除的操作而不能留言了.看,这有多可惜!不过,你也无须叹气,

ASP进阶教程Ⅱ:一个简单的留言簿

  从本章开始我们将由一个简单的,利用文件储存访问留言的留言簿程序进入我们的教程.编写这样一个留言簿,我们大致可以从以下三个步骤来完成. 步骤一:先设计一个留言表单的网页(如:guestbook1.asp,这不用我在这儿说教了吧?).见下图:  步骤二:在设计好留言表单后,我们开始进行编写处理留言的ASP程序. 我们要编写处理留言的ASP程序,最重要的问题是如何实现存取留言.而在ASP程序中,要存取文件,我们必须建立FileSystemObject对象(该对象主要用于读取Unicode或ASCI

ASP进阶教程Ⅲ:给留言簿润下色

为了能使我们做出来的留言簿更美观,让我们来给上一章的简单留言簿润下色,再令其留言在另外的一个单独的页面显示. 那么怎样给该留言簿润色呢?留言表单界面的背景总不能没吧?而且为了让留言表单的内容显示得更加规整,我们是否有必要用框架将留言表单的内容框起来呢?想好了,现在就让我们立即动手给我们的留言簿粉饰刷新. 步骤一:先给留言表单加上背景 这个问题我在这里就不多费口舌了.至于如何给表单的内容加点底色然后用虚框框起来,我们可以将上一章所给程序中的"定义留言的显示格式"部分进行更改.我在这里只是

ASP进阶教程Ⅵ:留言簿在线删除留言

还记得我们在第三章中作删除留言的事么?为了删掉那条往你脸上抹黑的留言,我们当时唯一能用上的方法竟然只有直接在留言数据库上进行查找和删除.(而即使是学习了第七章之后,我们也仅仅只能繁锁地先通过"留言管理"的密码验证,然后下载整个留言数据库,删除更改以后再上传.)天啊!你总没法保证:当你看到那些你不喜欢的留言时,正是当你正在使用着那台放了你留言簿的服务器的时候吧?假如有一天你出差在外,或是你正在使用的计算机根本就没有安装什么上传软件......是不是?无计可施了吧?那么难道我们就只能眼光光

ASP进阶教程Ⅷ:数据库版本的留言簿

 在前面我们介绍了文件版本的留言簿,现在我们不妨来设想一下:如果留言文件里面的留言很多,而你又急于想寻找其中的某条留言时,这时打开txt留言文件,对着一段段的留言记录,你敢担保你不会当场晕倒吗?而且文件留言簿最令人讨厌还远不只是这个原因,更气人的是:譬如你已经找到了你要找的留言,而且是非要将其删除不可(当然是因为那段留言竟毫不留情地往你脸上抹黑的缘由啦),那么此时其余想对你大发赞赏之言的朋友,就会因为你正在做留言删除的操作而不能留言了.看,这有多可惜!不过,你也无须叹气,虽然留言文件不能供多人共

ASP进阶教程:给留言簿润下色

为了能使我们做出来的留言簿更美观,让我们来给上一章的简单留言簿润下色,再令其留言在另外的一个单独的页面显示. 那么怎样给该留言簿润色呢?留言表单界面的背景总不能没吧?而且为了让留言表单的内容显示得更加规整,我们是否有必要用框架将留言表单的内容框起来呢?想好了,现在就让我们立即动手给我们的留言簿粉饰刷新. 步骤一:先给留言表单加上背景 这个问题我在这里就不多费口舌了.至于如何给表单的内容加点底色然后用虚框框起来,我们可以将上一章所给程序中的"定义留言的显示格式"部分进行更改.我在这里只是

ASP进阶教程Ⅶ:留言簿设置密码验证

为了兑现我对大家的承诺,我们现在立即就将"借助数据库和ASP程序"编写出来的,可以同时适用于IIS和PWS的安全网页看个仔细. 先睹为快,还是让我们首先就来看看该ASP程序(password.asp).< %Function CheckPassword( Name, Password )Dim conn, param, rsSet conn = Server.CreateObject("ADODB.Connection")param = "drive