vol*_*one 3 email coldfusion coldfusion-11
我个人无法看到这样做的方法,但我希望有一个聪明的黑客能够让它发挥作用.
我们必须定期向客户发送电子邮件,许多人的电子邮件过期并给我们邮件传递失败.为了保持数据库准确和干净,我想在电子邮件无法发送给他们时从数据库中删除他们的记录.
所以目前它有点像这样:
<cfloop query="rsCustomers">
<cftry>
<cfmail to="rsCustomers.Email" from="us@ourcompany.com" failto="fails@ourcompany.com" subject="Whatever">
[email text here]
</cfmail>
<cfcatch type="any">
<!--- just to skip this record when it fails to send --->
</cfcatch>
</cftry>
</cfloop>
Run Code Online (Sandbox Code Playgroud)
我可以在catch区域内运行查询,以便在记录中出现错误时删除记录(例如,格式错误的电子邮件地址).但是当邮件无法送达时没有任何反应.我收到了收件箱的失败通知,但这些通知可能有数百个,因此很难手动完成并从数据库中删除.
无论如何"抓住"未能发送电子邮件然后将它们反馈给查询以从数据库中删除?
有人曾在我参加的一个函数上做过这方面的演讲.方法是:
演示者将此文件作为预定作业运行.