Library tutorials & articles
Creating a Newsletter system
- Introduction
- Registration
- Sending the newsletter
Sending the newsletter
Finally, we need to create a page to send newsletter:
SendNewsletter.cfm
<CFIF IsDefined("Message")>
<CFQUERY NAME="GetMembers" DATASOURCE="Your DSN">
Select *
From Newsletter
<CFIF Form.EmailType EQ "1">
WHERE EmailType = 1
<CFELSE>
WHERE EmailType = 0
</CFIF>
Order By MemberID
</CFQUERY>
<CFLOOP QUERY="GetMembers">
<!--- Determine if email going out will be in HTML format or not --->
<CFIF #Form.EmailType# EQ "1">
<CFMAIL To="#GetMembers.Email#"
From="newsletter@menofvisionent.com"
Subject="This Week's Newsletter!">
#GetMembers.Message#
Sent: #DateFormat(Now(), 'ddd. mmmm dd, yyyy')#
to Unsubcribe visit: http://www.menofvisionent.com/unsubscribe.cfm
</CFMAIL>
<CFELSE>
<CFMAIL To="#GetMembers.Email#"
From="newsletter@menofvisionent.com"
Subject="This Week's Newsletter!"
type="HTML">
#GetMembers.Message#
Sent: #DateFormat(Now(), 'ddd. mmmm dd, yyyy')#
to Unsubcribe visit: http://www.menofvisionent.com/unsubscribe.cfm
</CFMAIL>
</CFIF>
</CFLOOP>
<CFELSE>
<form action="sendnewsletter.cfm" method="post">
The Message: <Textarea Name="Message"></textarea><BR>
Send as:
Text <input type="Radio" name="EmailType" value="1">
HTML <input type="Radio" name="EmailType" value="0"><br>
<input type="Submit" Value="Mail Newsletter">
</FORM>
</CFIF>
That's it! You've now created a fully interactive newsletter system for your site!
Related articles
Related podcasts
-
Crawlable Flash, Concurrent Python, Smart Robots.txt and more
Mixed topics today Adobe works with Google, Yahoo and others to make Flash apps crawlable. Reddit.com open sources their codebase "Smart" robots.txt files - do you use them? Bruce Eckel article on concurrent Python with Twisted Railo - open source ColdFusion Cognifty - new PHP framework...
Try using 'GTE' as opposed to 'GTI'.
Its supposed to mean Greater Than or Equal to.
Hi, could anyone help me with this? Im getting an error on the unsubscribe page to do with the GTI line. Its pretty new to me and im not even sure what this line means!!!
Element RECORDCOUNT is undefined in UNSUBSCRIBE.
I tried it with and without the"" but still get the same error???
Anyone willing to help out?
Thanks Pete
I'm new to the web scene but need this script to work. Please let me know how I put it in. Is it in the body. Are they seperate pages?
Can you make this dummy proof for a beginner like me.
Thanks
Please e-mail me asap if you can
Please explain where this code should be put.
Thank you in advance.
P.S Should i create an html page with plain text forms to enter the code behind???
If you have notice, the sample code here does not have a field 'message' in the database. Maybe you can add in the field for 'message', or you can have a form before that to input all the email message, and then change the 'GETMEMBERS.message' to 'form.message' ... hope this help.
Great job~!
I tried change a bit on the code, thought you maybe interested:
<CFIF Form.EmailType EQ "1">
<CFSET mailType = "HTML">
<CFELSE>
<CFSET mailType = "Text">
</CFIF>
<CFQUERY NAME="GetMembers" DATASOURCE="Your DSN">
Select *
From Newsletter
WHERE EmailType = #form.EmailType#
Order By MemberID
</CFQUERY>
<!--- Determine if email going out will be in HTML format or not --->
<CFMAIL To="#GetMembers.Email#"
From="newsletter@menofvisionent.com"
Subject="This Week's Newsletter!"
Type="#mailType#">
GetMembers.Message
Sent: #DateFormat(Now(), 'ddd. mmmm dd, yyyy')#
to Unsubcribe visit: http://www.menofvisionent.com/unsubscribe.cfm
</CFMAIL>
I'm getting this error when I try to input text for the "Message" form field... anyone know why it's doing this?
Error resolving parameter GETMEMBERS.MESSAGE
The column MESSAGE is not present in the query named GETMEMBERS. It is likely that you have misspelled the name of the column.
The error occurred while processing an element with a general identifier of (#GetMembers.Message#), occupying document position (41:1) to (41:20).
This thread is for discussions of Creating a Newsletter system.