|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
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假死,或者消耗掉服务器的内存导致服务器崩溃。 |
|