亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > ASP > 正文

用ASP建立郵件列表

2019-11-18 20:53:09
字體:
來源:轉載
供稿:網友
說起發送Email,我們總是想起郵件客戶端軟件,比如Outlook ExPRess、Foxmail(最新版3.0 beta1已于 4月30號發布,請到http://www.aerofox.com/下載)等。如果在Web上發送Email,大家肯定又會想起一些免費的電子郵箱,比如大名鼎鼎的www.163.net等,那么如何實現在Web上發送Email呢?大家可能會想到首先安裝郵件服務器,比如Exchange,其實NT Server4.0加IIS4.0就可以了,本文就是想以實例來說明技術上的實現方法。

  郵件列表(Maillist)在Internet上應用比較廣泛。使用郵件列表可以與訪問者保持積極的聯系,快捷、簡便、低成本地發送信息,也可以提高網站的知名度。擴展后的郵件列表也可以用于創立電子雜志(像索易:http://www.soim.online.sh.cn/)。探討郵件列表的建立是非常有意義的,我們的實例就是建立一個郵件列表。

  一、電子郵件發送原理

  郵件傳遞過程的實現是從一個如Microsoft Outlook Express這樣的客戶端軟件將一份郵件發送給一個SMTP服務器開始的,然后SMTP服務器負責決定如何處置該郵件。

  如果電子郵件的目的域是服務器的本地域(比如將電子郵件發送給harrizon@domain.com,而且SMTP服務器是smtp.domain.com),那么該郵件被存儲在這個服務器上,否則將該郵件轉發給另一個合適的服務器。

  網絡上所有的SMTP服務器都可以通過一種“語言”互相通信,這個通用語言就是SMTP協議。但是,服務器如何決定傳遞郵件的目的地呢?可以通過它的域名解析系統(DNS)來查找域。

  NT Server是目前使用比較廣泛的網絡服務器,而且前景看好,IIS(Internet Information Server4.0,Internet信息服務器)是網絡文件和應用程序服務器,它們使用HTTP、Gopher以及FTP,通過Internet或Intranet來提供服務。

  IIS SMTP服務僅提供郵件傳遞功能,它不能對接收郵件提供服務。Microsoft在IIS中加入了一個特殊的組件—Collaboration Data Objects for Microsoft Windows NT Server,也稱為CDO for NTS Library,它提供郵件對象,可以在asp(Active Server Pages)腳本中使用這些對象來訪問和處理發送給特定用戶的電子郵件。

  郵件列表就是在網上收集訪問者的Email,從而在需要的時候定期向該訂閱者發送一定的信息。需要的工作是收集Email、發送Email。下面我們可以看到如何來完成這些工作。

  二、 從Web頁面發送電子郵件

  利用IIS SMTP和CDO for IIS,可以從一個ASP腳本直接向Internet上的任何人發送電子郵件。

  首先要安裝Microsoft NT Ser-ver4.0,然后再安裝IIS4.0,務必注意是否安裝了SMTP服務,默認方式是安裝的。安裝完畢后不妨看看在winnt/system32目錄下是否有一個文件cdonts.dll。如果存在這個文件,那么安裝過程宣告成功。

  程序1是最簡單的發送電子郵件程序,它將一封主題為subject、內容為test的郵件從郵箱harrizon@163.net發送到ivan@188.net。

  <%

  Dim MailObject

  Set MailObject = Server.CreateObject("CDONTS.NewMail")

  MailObject.Send "harrizon@163.net"," ivan@188.net", "subject", "test"

  %>

  

  這樣的程序雖然可以快速測試是否成功,但是實用價值并不高。我們將其優化一下,根據郵件列表的特點,編出一個有實用價值的程序。

  首先請用access建立一個數據庫mail.mdb,用于保存email地址;然后需要建立一個表,表的名字為mail,包含一個字段email(字段名email,數據類型:文本,字段長度:50)即可,另外可以有一個id(字段名:id,數據類型:自動編號,本字段可以不要)。設置ODBC ,在控制面板中雙擊ODBC圖標,設立dsn,其名為mail。

  至此設置部分已經完成,現在編寫程序。

  將程序2加入到你的主頁的合適位置。程序2的目的是為了收集訪問者的Email。

  <form method="POST" action="addmail.asp">

   <p>您的Email:<input type="text" name="email" size="20"><input type="submit"

   value="訂閱" name="B1"><input type="reset" value="重寫" name="B2"></p>

  </form>

  用瀏覽器打開程序2得到結果如圖1,填入一個合法的email地址,單擊“訂閱”。服務器自動調用程序3,輸入的email將自動入庫,你不妨用Access直接打開數據庫mail.mdb看看剛剛入庫的Email是否保存了。

  (圖注ASP-1) 圖1

  <%

  email=trim(request("email"))

  Set Connection=Server.Create-Object("ADODB.Connection")

  Connection.Open "mail","",""

  SQL="INSERT INTO mail(email) VALUES('"+email+"')"

  Set RS=Connection.Execute(sql)

  response.write email%>,多謝您加入!

  程序3的目的是將email保存到數據庫mail.mdb里去。

  Email入庫意味著有了訂閱者,現在我們可以進入下一個步驟—發送郵件給訂閱者了。

  這里我們用兩個程序(sendmail. asp,mail.asp)來完成這部分工作,sendmail.asp的作用是生成一個界面(見圖2),在這里我們可以選擇發送的對象(全部或部分),填寫發送的主題和內容,也可以粘貼附件,填寫完畢后就單擊“發送郵件”,此時對于管理員來說,一切工作是結束了,但如何發送郵件呢?我們就需要調用程序5了。

  程序5為發送郵件處置程序mail. asp。其作用就是發送郵件,當然是根據程序4的選擇和輸入來處理郵件的。程序5的完整源代碼參見《電子與電腦》的網站www.pccomputing.com.cn。

  程序4為在線發送電子郵件sendmail.asp。程序運行結果如圖2所示。

  (圖注ASP-2) 圖2

 ?。ǔ绦?)

  <% Set Connection=Server.CreateObject("ADODB.Connection")

  Connection.Open "mail","",""

  sql="select * from mail"

  Set RS=Connection.Execute(sql)

  sql1="select count(*) from mail"

  Set RS1=Connection.Execute(sql1)

  %>

  <form method="POST" action="mail.asp">

  <table border="1" width="100%">

   <tr bgColor="#abcdef">

   <td align="middle">適占耍喝*<%=rs1(0)%>位訂閱者<inputtype=

   "checkbox" name="all" value="1" checked><hr><%do while not

   rs.eof%>

   <font size="3">

   <input type="checkbox" name="shou" value="<%=rs(0)%>">

  <%=RS(1)%>

  <%

   rs.movenext

   loop

  %> </td> </tr>

   <tr bgColor="#eeddff">

   <td width="7%">

   郵件主題:<input type="text" name="subject" size="53"><br>

   郵件內容:<br>

   <textarea rows="9" name="body" cols="59"></textarea><br>

   您的mail:<input type="text" name="usemail" size="50" value="harrizon@21cn.com">

   <br>附件:<input type="file" maxlength="50" name="attfile" size="20" value="">附件名稱:<input type="text" name="fname" size="10" value=""><br></p>

   <input type="submit" value="發送郵件" name="B1"><input type="reset" value="重寫" name="B2"></p> </td>

  </tr>

  </table>

  </form>

  

 ?。ǔ绦?)

  <% SHOU=trim(request("SHOU")) '取得在程序四選擇和輸入的內容

   subject=trim(request("subject"))

   body=trim(request("body"))

   att_file=trim(request("attfile"))

   fname=trim(request("fname"))

   usemail=trim(request("usemail"))

   ckall=request("all")

  if ckall=1 then '是否是給所有訂閱者發送郵件

  Set Conn2=Server.CreateObject("ADODB.Connection")

  conn2.open "MAIL","","" '打開數據庫

  sql2="select * from mail"

  Set RS2=Conn2.Execute(SQL2) '從數據庫讀出所有的郵件地址

   do while not rs2.eof

  item=rs2(0)

  Set Conn=Server.CreateObject("ADODB.Connection")

  conn.open "MAIL","",""

  sql="select * from mail where id="+cstr(item)+""

  Set RS=Conn.Execute(SQL)

  Set MailObject = Server.CreateObject("CDONTS.NewMail")

  if att_file="" then '附件為空

  MailObject.Send usemail,rs(1),subject,body

  response.write "無附件web郵件發送成功!"

  %><hr><%else

  f_name=fname

  MailObject.From=gzer@163.net '發件郵址

  MailObject.To=rs(1) '收件人

  MailObject.Subject=subject

  MailObject.Body=body

  MailObject.AttachFile att_file,f_name

  MailObject.Send '發送郵件

  response.write "含附件web郵件發送成功!" '發送成功

  end if

  response.write "收信地址:"+rs(1)+"<p>"

  response.write "主題:"+ subject +"<br>"

  response.write "內容:"+ body +"<br>"

  %><hr><% rs2.movenext

   loop

  else

  for each item in request("shou")

  Set Conn=Server.CreateObject("ADODB.Connection")

  conn.open "MAIL","",""

  sql="select * from mail where id="+cstr(item)+""

  Set RS=Conn.Execute(SQL)

  Set MailObject = Server.CreateObject("CDONTS.NewMail")

  if att_file="" then

  MailObject.Send usemail,rs(1),subject,body

  response.write "無附件web郵件發送成功!"

  %><hr><%else '

  f_name=fname

  MailObject.From="gzer@163.net" '發件郵址

  response.write rs(1) +"<br>"

  MailObject.To=rs(1) '收件人

  MailObject.Subject=subject

  MailObject.Body=body

  MailObject.AttachFile att_file,f_name

  MailObject.Send

  response.write "含附件web郵件發送成功!"

  end if

  %><hr><% next '下一封郵件

  end if

  %>

  

  三、 后記

  1. 由于篇幅的原因,這里省去了一些代碼,請讀者理解。

  2. 如果發送郵件時加一個接收電子郵件地址的輸入欄,那么你可以給任何一個合法的地址發送電子郵件,應用也就更為廣泛了。

  3. 使用本程序可以發送匿名郵件,但注意請勿亂用!

  4. 若是使用POP3組件,就可以接收郵件了。

  5. 本程序的附件發送不支持中文路徑,有心者不妨編寫更好的組件來支持中文路徑。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品国产suv| 国产精品一区二区女厕厕| 欧美精品一区二区三区国产精品| 国内成人精品视频| 亚洲精品美女在线| 精品久久久久久久久久久久久久| 欧美日本高清一区| 成人伊人精品色xxxx视频| 91精品视频专区| 国产精品自拍视频| 欧洲一区二区视频| 亚洲区在线播放| 97在线视频精品| 精品久久久久国产| 亚洲人午夜精品免费| 色噜噜狠狠狠综合曰曰曰88av| 国产suv精品一区二区三区88区| 亚洲热线99精品视频| 日韩av不卡电影| 欧美一性一乱一交一视频| 欧美激情xxxxx| 91大神福利视频在线| 欧美精品激情blacked18| 国产精品吊钟奶在线| 亚洲天堂视频在线观看| 亚洲精品一区二区在线| 国产精品视频久久久久| 欧美精品成人91久久久久久久| x99av成人免费| 亚洲国产精品大全| 国产精品99久久久久久久久| 亚洲精品电影在线| 国产97免费视| xxxxxxxxx欧美| 97精品久久久| 欧美一区二区三区精品电影| 亚洲男人天堂古典| 日本精品一区二区三区在线| 欧美电影免费观看网站| 日韩欧美成人免费视频| 国产主播喷水一区二区| 在线观看不卡av| 色av中文字幕一区| 日本最新高清不卡中文字幕| 成人在线观看视频网站| 亚洲аv电影天堂网| 日韩欧美一区二区三区久久| 国产97在线播放| 午夜精品一区二区三区在线| 韩国三级日本三级少妇99| 日韩电影免费在线观看| 久久国产精品久久国产精品| 欧美午夜片欧美片在线观看| 欧美日韩一区二区免费视频| 亚洲小视频在线观看| 午夜精品久久久久久久99黑人| 国产做受高潮69| 亚洲第一页中文字幕| 国产成人+综合亚洲+天堂| 最新91在线视频| 91在线视频成人| 97国产一区二区精品久久呦| 国产成人一区二区三区小说| 久久亚洲一区二区三区四区五区高| 欧美精品亚州精品| 久久久亚洲精选| 丝袜情趣国产精品| 国产欧美日韩中文字幕| 日韩欧美在线中文字幕| 国产精品精品一区二区三区午夜版| 久久亚洲欧美日韩精品专区| 韩日精品中文字幕| 欧美疯狂性受xxxxx另类| 精品动漫一区二区| 欧美激情免费在线| 欧美夫妻性生活视频| 国产精品久久久久久av福利软件| 97免费在线视频| 国产视频福利一区| 中文字幕欧美日韩精品| 亚洲国产成人久久综合| 91精品国产高清久久久久久久久| 欧美一级高清免费播放| 成人性生交大片免费看视频直播| 亚洲第一天堂av| 亚洲人午夜精品免费| 亚洲欧美精品一区| 一区二区日韩精品| 国产精品久久久久久av福利| 亚洲最新av在线网站| 午夜精品福利电影| 国模精品一区二区三区色天香| 精品人伦一区二区三区蜜桃网站| 在线视频欧美日韩精品| 国内精久久久久久久久久人| 精品久久久久久中文字幕大豆网| 欧美午夜视频在线观看| 精品久久久久久久久久久久久久| 久久免费高清视频| 亚洲图中文字幕| 国产精品三级网站| 在线精品国产欧美| 日韩电影免费观看中文字幕| 日本免费在线精品| 精品无码久久久久久国产| 久久久成人的性感天堂| 日本精品视频网站| 欧美日韩一区二区三区| 日韩精品极品在线观看播放免费视频| 欧美在线视频一区二区| 国产成人一区二区在线| 成人国产精品久久久久久亚洲| 日韩精品极品在线观看| 国产精品久久久久久久9999| 色狠狠av一区二区三区香蕉蜜桃| 美女av一区二区三区| 亚洲国产精品成人av| 日本精品一区二区三区在线播放视频| 91免费福利视频| 2019国产精品自在线拍国产不卡| 亚洲免费小视频| 欧美另类第一页| 在线观看日韩视频| 国产欧美精品一区二区三区-老狼| 国产精品第100页| 97在线视频免费观看| 欧美日韩一区二区在线| 欧美裸体xxxxx| 国产又爽又黄的激情精品视频| 日韩毛片在线看| 久久综合网hezyo| 亚洲男人天堂久| 亚洲精品一区二三区不卡| 黄色成人av网| 91亚洲精品一区二区| 97香蕉超级碰碰久久免费的优势| 自拍偷拍亚洲欧美| 国产精品ⅴa在线观看h| 日韩精品免费电影| 国产又爽又黄的激情精品视频| 亚洲午夜精品视频| 91免费的视频在线播放| 成人精品久久一区二区三区| 久久久噜噜噜久久久| 国产一区视频在线播放| 国产精品视频99| 久久久91精品国产一区不卡| 91久久中文字幕| 日韩最新免费不卡| 日韩中文字幕网站| 亚洲精品少妇网址| 亚洲激情视频网站| 深夜精品寂寞黄网站在线观看| 奇米4444一区二区三区| 在线a欧美视频| 欧美日韩性视频| 国产精品久久久久久久久借妻| 欧美劲爆第一页| 精品欧美aⅴ在线网站| 日韩精品一二三四区| 亚洲男人第一网站| 亚洲欧美日本另类| 亚洲成人精品久久久| 在线日韩av观看|