仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 384|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网页编程之ASP发送邮件的class

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:57:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。SQLServer还有更多的扩展,可以用存储过程,数据库大小无极限限制。发送邮件一.程序思绪
  一切的程序,次要完成两个功效,1、发送邮件;2、上传附件。利用无组件上传程序来上传附件到服务器,在发送完后,将删除服务器上的邮件。完成这两个功效,必要一个数据库来寄存邮件内容及附件信息(文件名)。邮件的发送有两种情形:一是,无附件的邮件;二是,有附件的邮件。
  1.发送无附件的邮件。用户依据实践情形来填写收信人、发信人、抄送、密送、SMTP服务器地点、邮件主题、邮件内容等信息,这些信息中,收信人、发信人、邮件主题、邮件内容是必需填写的,不然将收不到邮件。假如SMTP服务器撑持SMTP考证,那末你就把你在该邮局的用户名和暗码填上。如,你填的发信人地点是xxxx@163.com,由于163的SMTP服务,撑持SMTP考证,以是你就要必要你在163的用户名xxxx,暗码****,如许才干顺遂发送邮件;如,你发信人地点是xxxx@hotmail.com,由于hotmail是不必要SMTP考证的,以是你不必填写用户名和暗码。只需记着一点,你的发信的SMTP服务器撑持SMTP考证的话,你就要填写响应的用户名和暗码。你在填写完表单后,点“发送”按钮就间接发送邮件了。这个历程是在mail.asp和inc_clsEmail.asp完成的。
  2.发送带附件的邮件。这个历程,次要分三步,1、填写表单信息(同上),不外在点“发送”按钮前,必要转到第二步,发送附件。2、此步聚次要是上传附件到服务器。必要服务器撑持FSO、Dictionary、Stream等组件。在进进上传附件界眼前,先在数据库中创立一笔记录,把刚成填的表单信息存在内外,然后选择当地必要当地的rar或zip文件,选好后点“上传”按钮就好了,传完后程序将更新数据库中存进附件文件名和字段的内容并主动跳转到发信页面,发信页面从数据库中读取邮件信息并显现出来,此时点“发送”,就将发送附件了。本历程次要由mail.asp、inc_clsEmail.asp、inc_clsUpload.asp、Upload.asp和Uploadok.asp来完成。
  在这个发信程序顶用到的文件清单:
    attachment.mdb  邮件信息一时寄存库
    install.asp   在数据库中创立邮件信息一时表
    Mail.asp     发送邮件
    Upload.asp    文件上传
    Uploadok.asp   文件上传乐成
    inc_clsEmail.asp 邮件发送类
    inc_clsUpload.asp无组件上传类
    inc_set.asp   一些表格色彩的设置
二.创建数据库
  1.翻开你的Access创建一个文件名为:attachment.mdb.增加以下字段:
    (1).ID    范例为主动编号(寄存邮件信息的ID编号)
    (2).smtpcheck 范例为是/否字段(寄存是不是必要SMTP考证)
    (3).from   范例为文本字段(寄存发信人的Email地点)
    (4).fromname 范例为文本字段(寄存发信人的名字)
    (5).to    范例为文本字段(寄存收信人的Email地点)
    (6).bcc    范例为文本字段(寄存密送人的Email地点)
    (7).cc    范例为文本字段(寄存抄送人的Email地点)
    (8).server  范例为文本字段(寄存SMTP服务器地点)
    (9).subject  范例为文本字段(寄存邮件主题)
    (10).body   范例为备注字段(寄存邮件的内容)
    (11).username 范例为文本字段(寄存邮箱登任命户名)
    (12).password 范例为文本字段(寄存邮箱登录的暗码)
    (13).filenames范例为文本字段(寄存附件的文件名)
  注重:能够把字段设置为同意为空。
  固然你能够本人增加你以为必要的字段,假如你把字段名或表名换成别的称号,则对程序也要作出响应的变动,否则会堕落。假如你不想手工建表及增加字段,那你能够在扫瞄器中运转Install.asp文件,它能够主动建表,你就能够偷懒了:)
  2.在入手下手编写之前你能够排列一下要用到的SQL语句.
<P>搜刮出数据库中ID号为1的邮件信息
SQL="SELECT*FROMattachmentORDERBYWHEREid=1"
这个语句是增加新的一时邮件信息时用到的.
SQL="INSERTINTOattachment(smtpcheck,from,fromname,to,bcc,cc,server,subject,body,username,
password,filenames)VALUES(true,cjj8110@hotmail.com,cjj,cjj8110@hotmail.com,,,,测试,测试邮件件发送程序,cjj8110,********,1,zip,1.rar)"
删除表中全体数据。
SQL="DELETEFROMattachment"
删除表中指定ID的纪录
SQL="DELETEFROMattachmentWHEREid="&id
更新表中,指定ID的filenames字段的内容
SQL="UPDATEattachemntSETfilenames="&filenames&"WHEREID="&id


三.编写代码
  Install.asp:思索得手工建表有点贫苦,以是写了这个文件。文件次要用到CREATETABLE和DROPTABLE语句,不外因为数据库的缘故原由,有些数据库有大概不撑持此语句。本文以Access为例,由于ACCESS撑持这两条语句,假如仍是老手还看不懂那也不妨,觉得无机会再研讨好了:)。因为不分明数据库界说了那些关头字,以是在创立表和字段时,都用[]把表名和字段名括起来,即便表名或字段名和数据库的关头字抵触,也不会引发程序堕落。不外运转本程序前,必需先在Access中创立一个数据库称号为attachment.mdb,能够不为其创立表,用此程序来创立。
install.asp的源码:
<%此文件在实行后最好删除,由于假如不注重再次实行的话,将会使数据库的一切数据丧失,牢记!DimSYS_strTableName,SYS_strSQL,SYS_objRS必要创立的表的名字SYS_strTableName="attachment"SetobjConn=Server.CreateObject("ADODB.Connection")OLEDB体例翻开数据库的Connection工具毗连字符串strcon="provider=microsoft.jet.oledb.4.0;datasource="&Server.mappath("attachment.mdb")objConn.openstrcon和数据库已创建毗连可对其操纵了.DROPTABLE是一条从数据库中删除表的SQL语句。有些数据库有大概不撑持。SYS_strSQL="DROPTABLE["&SYS_strTableName&"]"删除表时,假如有毛病呈现则跳转实行下语句由于假如DROPTABLE一个数据库中其实不存在的表时,就会招致程序堕落,以是加了这个语句OnErrorResumeNex<p>此旧事共有<fontcolor=red><b>14</font></b>页上一页<ahref=195044.html>1</a><ahref=195044-2.html>2</a><ahref=195044-3.html>3</a><ahref=195044-4.html>4</a><ahref=195044-5.html>5</a><ahref=195044-6.html>6</a><ahref=195044-7.html>7</a><ahref=195044-8.html>8</a><ahref=195044-9.html>9</a><ahref=195044-10.html>10</a><ahref=195044-11.html>11</a><ahref=195044-12.html>12</a><ahref=195044-13.html>13</a><ahref=195044-14.html>14</a>下一页</TD></TR></TBODY></TABLE></DIV><TABLEclass=pageSpaceNewsSeparatorcellSpacing=0cellPadding=1width="100%"border=0><TBODY><TR><TDwidth="71%"height=24><ahref=/sendmail.asp?filename=195044target=_blankclass=a01>保举密友</a><SPANclass=pageIcon>|<ahref=/member/add_favorite.asp?filename=195044target=_blankclass=a01>频道保藏</a>|<Aclass=a01onclick=javascript:doPrint()href="">打印文档</A>|<ahref=/senderror.asp?f
Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。
分手快乐 该用户已被删除
沙发
发表于 2015-1-20 06:38:49 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
冷月葬花魂 该用户已被删除
板凳
发表于 2015-1-24 15:51:03 | 只看该作者
不能只是将它停留在纸上谈兵的程度上。
地板
发表于 2015-1-25 17:01:05 | 只看该作者
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
老尸 该用户已被删除
5#
发表于 2015-2-1 12:08:58 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
蒙在股里 该用户已被删除
6#
发表于 2015-2-7 04:39:41 | 只看该作者
Session:这个存储跟客户端会话过程的数据,默认20分钟失效
愤怒的大鸟 该用户已被删除
7#
发表于 2015-2-20 13:57:02 | 只看该作者
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
小女巫 该用户已被删除
8#
发表于 2015-3-6 17:27:55 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
若相依 该用户已被删除
9#
发表于 2015-3-20 12:55:39 | 只看该作者
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2025-1-9 02:24

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表