Mailing
List เป็นเหมือน หนึ่งเครื่องมือ สำหรับผู้สร้างเว็บไซต์ ที่ทำหน้าที่ในการแจ้งข่าวใหม่ๆ
ไปยัง ผู้ที่มาเยี่ยมชมเว็บเพจของเรา เครื่องมือ นี้ ทำให้เว็บไซต์
มีลูกค้าเหนียวแน่น และ เป็นที่นิยมอย่างต่อเนื่อง หลายๆคนส่งสัยว่า
เราจะส่งเมล ที่เหมือนๆ กันไปยังคน หลายๆ คนได้อย่างไร มันน่าจะยากมากกก...
อาจจะต้องใช้โปรแกรม ในการส่งเมลช่วย!!! เปล่าเลยครับ Source
Code มีเพียงไม่กี่บรรทัดเท่านั้นเอง |
เตรียมฐานข้อมูล
อีเมลที่ต้องส่ง
ในที่นี้
ผมจะไม่กล่าวถึง การนำข้อมูลลงไปเก็บในตารางของเรานะครับ
(มันจะยาวเกินไป) เอาเป็นว่า เราสรุปกันว่าเรามี
ข้อมูลอีเมลทั้งหมดที่ต้องการส่งกันแล้วอยู่ใน ไฟล์ชื่อ
mailinglist.mdb ตาราง mailinglist ซึ่งมีโครงสร้างดังนี้ |
 |
ถ้าขี้เกียจสร้างเอง
คลิกที่นี่ ครับ |
|
|
สร้างฟอร์มสำหรับกรอกข้อมูล
ฟอร์มในการกรอกข้อมูล
จะเป็นฟอร์มที่ใช้ในการกรอก เนื้อความในจดหมายที่เราต้องการส่งไป
ฟอร์มนี้จะประกอบไปด้วย
1. อีเมลผู้ส่ง อีเมลนี้จะเป็น อีเมลของผู้ส่งเอง
ตั้งชื่อฟอร์ม input นี้ว่า fromemail
2. หัวเรื่องจดหมาย ตั้งชื่อฟอร์ม input
นี้ว่า subject
3. ข้อความในจดหมาย ตั้งชื่อฟอร์ม input
นี้ว่า body
ซึ่งจะได้ไฟล์ชื่อว่า mailingform.html
ดังนี้
|
ไฟล์
mailingform.html |
<form
method="post" action="mailinglist.asp">
อีเมลผู้ส่ง : <input
type="text" name="frommail">
<br>
หัวเรื่อง : <input
type="text" name="subject">
<br>
เนื้อความจดหมาย :<br>
<textarea
name="body"></textarea>
<br>
<input
type="submit" name="Submit"
value="Submit">
</form> |
|
|
|
ดูผลลัพธ์จากการ
run ไฟล์นี้ได้ ที่นี่
ไฟล์ mailingform.html
จะส่งค่าไปยังไฟล์ mailinglist.asp
เพื่อทำการส่งข้อมูลไปยังเมลที่อยู่ ในฐานข้อมูลด่อไป |
|
|
ไฟล์
Mailinglist.asp วนส่งจบครบทุกคน!!!
ในตัวอย่างนี้
ผมใช้ component JMail ในการส่งเมล นะครับ หลักการคร่าว
ๆ ก็คือ นำข้อมูลออก อีเมล ที่ต้องการส่งไปหา มาจาก ฐานข้อมูล
แล้ว ใส่ หัวเรื่อง กับ เนื้อความเข้า ไป จากนั้นก็ทำการส่ง
แล้วก็วน กลับไปนำค่า อีเมลคนใหม่ออกมาจากฐานข้อมูลอีก
จนครบทุกคน |
ไฟล์
mailinglist.asp |
<!--ติดต่อฐานข้อมูล-->
<%Set conn = Server.CreateObject("ADODB.Connection")
conn.open "DRIVER={Microsoft Access
Driver
(*.mdb)};DBQ="&Server.mappath("mailinglist.mdb")
Set rs = Server.CreateObject ("ADODB.Recordset")
rs.Open "mailinglist",conn
Do While Not rs.EOF%>
<!--จบการติดต่อฐานข้อมูล-->
<!--ส่งเมล-->
<%Set JMail = Server.CreateObject("JMail.SMTPMail")
JMail.ServerAddress = "mail.thaiasp.net:25"
'อย่าลืมเปลี่ยน
Mail server เวลาเอาไปใช้
JMail.Sender = Request.Form("frommail")
JMail.AddRecipient rs("email") 'เอาอีเมลผู้รับมาจากฐานข้อมูล
JMail.Subject = request.Form("subject")
JMail.Body = request.Form("body")
JMail.AppendText ""&chr(13)&"------------------------------"&chr(13)&_
"
บริการส่งเมลจาก ThaiASP.net"
'เครื่องหมาย
&_ หมายถึงยังไม่จบต่ออีกบรรทัด
JMail.Priority = 3
result = JMail.Execute
If Ucase(result) = "FALSE" then
status = "ไม่สามารถส่งได้"
Else
status = "ได้รับการจัดส่งเรียบร้อยแล้ว"
End If%>
<!--ส่งเมลเสร็จแล้ว-->
<!--แสดงผลในการส่ง-->
อีเมลที่ส่งให้
<%=rs("email")&"
<b>"&Status&"</b>"%>
<br>
<!--จบการแสดงผลในการส่ง-->
<%Jmail.Close
rs.MoveNext
Loop
rs.Close
conn.Close%> |
|
|
|
|
|