Solved

CFMAIL sending email twice!

Posted on 2003-11-28
13
354 Views
Last Modified: 2013-12-24
Hi,

I created an online library where people can check out books etc. I have a section where the library owner can send emails to the people whose books are overdue. However, whenever that process is run, two emails are sent to each person. I have no clue what could cause this.

I have a cfquery that grabs the information for the people who are overdue. Then I call the query within my cfmail. Here's the code:

<cfquery name="qryOverdue" datasource="library">
SELECT Loans.LoanIndex, Loans.Title, Loans.Name, Loans.Email, Loans.Date_Out, Loans.Date_Due
FROM Loans
WHERE ((Now()>[Loans]![Date_Due]))
</cfquery>

<cfmail
to="#qryOverdue.Email#"
from="library_mailbox@company.com"
subject="overdue learning library item"
query="qryOverdue"
server="company_exchange_server.com"
port="25"
type="html">
<cfmailparam name="X-Priority" value="1">
Greetings,<p>
The item you checked out on #DateFormat(qryOverdue.Date_Out, 'mm/dd/yyyy')#,
"#qryOverdue.Title#", was due back #DateFormat(qryOverdue.Date_Due, 'mm/dd/yyyy')#.<p>
Please return this item to the Learning Library ASAP.<p>
Thank you!
</cfmail>
0
Comment
Question by:makila
  • 5
  • 3
  • 2
13 Comments
 
LVL 12

Expert Comment

by:jyokum
ID: 9840435
<cfquery name="qryOverdue" datasource="library">
SELECT Loans.LoanIndex, Loans.Title, Loans.Name, Loans.Email, Loans.Date_Out, Loans.Date_Due
FROM Loans
WHERE ((Now()>[Loans]![Date_Due]))
</cfquery>

<cfoutput query="qryOverdue">
    sending mail to #qryOverdue.Email#<br> <!--- this is just for debugging --->
    <cfmail
        to="#qryOverdue.Email#"
        from="library_mailbox@company.com"
        subject="overdue learning library item"
        server="company_exchange_server.com"
        port="25"
        type="html">
        <cfmailparam name="X-Priority" value="1">
Greetings,<p>
The item you checked out on #DateFormat(qryOverdue.Date_Out, 'mm/dd/yyyy')#,
"#qryOverdue.Title#", was due back #DateFormat(qryOverdue.Date_Due, 'mm/dd/yyyy')#.<p>
Please return this item to the Learning Library ASAP.<p>
Thank you!
    </cfmail>
</cfoutput>
0
 

Author Comment

by:makila
ID: 9840458
I should also add this tidbit. I replaced #qryOverdue.Email# with my own email and still received two emails for each overdue item.
0
 
LVL 12

Expert Comment

by:jyokum
ID: 9840675
are you sure your query is only returning 1 record? try dumping the recordset to see what's being returned

<cfdump var="#qryOverdue#">
0
Simplifying Server Workload Migrations

This use case outlines the migration challenges that organizations face and how the Acronis AnyData Engine supports physical-to-physical (P2P), physical-to-virtual (P2V), virtual to physical (V2P), and cross-virtual (V2V) migration scenarios to address these challenges.

 

Author Comment

by:makila
ID: 9840906
I will try that when I get back to work on Monday :)
0
 
LVL 17

Expert Comment

by:Tacobell777
ID: 9841497
You probably need to group your query in the mail tag, look at the cfmail attribute GROUP
0
 

Author Comment

by:makila
ID: 9851963
The query is returning 10 unique records now (books have been returned!) and sending 20 emails. I upgraded to Coldfusion MX 6.1 in hopes that maybe it was a server bug but no such luck. I checked the mailsent.log and it shows 20 emails being sent.

I Googled to see if anyone else has had the same problems and I found a couple others but they never found resolutions.
0
 

Author Comment

by:makila
ID: 9852100
Previous message is referring to the results I got from dumping the recordset, btw. I also tried grouping the query in the mail tag by "LoanIndex" but I still got 20 emails. Ack.
0
 
LVL 17

Expert Comment

by:Tacobell777
ID: 9852589
is the mail tag wrapped in another custom tag? If so, does this tag end with \> ?
0
 

Author Comment

by:makila
ID: 9852702
I kind of have it figured out now. Somehow, the way I linked to the page with cfmail made it run twice.

This simple link works and it only emails once:

Click <a href="library_overdue_II.cfm">here</a> to send an email reminder to all overdue loanees.

This link pops up a small window and after the cfmail sends, the windows says "Reminders have been sent." This sends the emails twice:

Click <a href="library_overdue_II.cfm" target="send_reminders" onClick="window.open('library_overdue_II.cfm','send_reminders','width=500,height=325,top=150,left=200,toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=0,resizable=1')" class="no_under">here</a> to send an email reminder to all overdue loanees.
0
 
LVL 12

Accepted Solution

by:
jyokum earned 100 total points
ID: 9855838
change it to

Click <a href="#" target="send_reminders" onClick="window.open('library_overdue_II.cfm','send_reminders','width=500,height=325,top=150,left=200,toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=0,resizable=1')" class="no_under">here</a> to send an email reminder to all overdue loanees.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: kevp75
Hey folks, 'bout time for me to come around with a little tip. Thanks to IIS 7.5 Extensions and Microsoft (well... really Windows 8, and IIS 8 I guess...), we can now prime our Application Pools, when IIS starts. Now, though it would be nice t…
One of the typical problems I have experienced is when you have to move a web server from one hosting site to another. You normally prepare all on the new host, transfer the site, change DNS and cross your fingers hoping all will be ok on new server…
In a recent question (https://www.experts-exchange.com/questions/28997919/Pagination-in-Adobe-Acrobat.html) here at Experts Exchange, a member asked how to add page numbers to a PDF file using Adobe Acrobat XI Pro. This short video Micro Tutorial sh…
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question